跳至主要内容

统计列中唯一数字值或日期的数量

Author: Xiaoyang Last Modified: 2025-05-07

假设您有一个包含一些重复项的数字列表,现在,您想统计唯一值的数量,或者列表中仅出现一次的值的数量,如下截图所示。在本文中,我们将讨论一些有用的公式,以帮助您在 Excel 中快速轻松地完成此任务。

doc-count-unique-values-1


在 Excel 2019、2016 及更早版本中统计列中唯一数字值或日期的数量

如果您使用的是 Excel 2019、2016 或更早版本,可以应用常规的 SUM、FREQUENCY、IF、COUNTIF 和 ISNUMBER 函数来获取唯一值的数量或仅出现一次的值的数量。

统计列中唯一数字值或日期的数量

要从列表中统计唯一数字的数量,SUM 和 FREQUENCY 函数可能会对您有所帮助,通用语法为:

=SUM(--(FREQUENCY(range,range)>0))
  • 范围:您要从中统计唯一值的数据列。

请在空白单元格中输入或复制以下公式以输出结果,然后按 Enter 键获取结果:

=SUM(--(FREQUENCY(A2:A12,A2:A12)>0))

doc-count-unique-values-2


公式解释:

=SUM(--(FREQUENCY(A2:A12,A2:A12)>0))

  • FREQUENCY(A2:A12,A2:A12):FREQUENCY 函数返回列表 A2:A12 中每个数值的计数,并将得到一个类似这样的数组:{1;2;0;2;0;1;1;3;0;0;1;0}。数组中的数字表示这些值在列中出现的次数。数组中的 0 表示这些数字已经出现在数据范围内。
  • --(FREQUENCY(A2:A12,A2:A12)>0=--({1;2;0;2;0;1;1;3;0;0;1;0})>0:数组中的每个值都会与零进行比较:如果大于 0,则显示 TRUE,否则显示 FALSE。然后,双负号将 TRUE 和 FALSE 转换为 1 和 0,因此它将返回这样的结果:{1;1;0;1;0;1;1;1;0;0;1;0}。
  • SUM(--(FREQUENCY(A2:A12,A2:A12)>0))=SUM({1;1;0;1;0;1;1;1;0;0;1;0}):最后,SUM 函数将数组中的所有值相加,并得到结果:7。

统计列中仅出现一次的唯一数字值或日期的数量

要从列表中统计仅出现一次的唯一数字值的数量,您应该结合使用 SUM、IF、ISNUMBER 和 COUNTIF 函数来创建公式,通用语法为:

{=SUM(IF(ISNUMBER(range)*COUNTIF(range,range)=1,1,0))}
数组公式,应同时按下 Ctrl + Shift + Enter 键。
  • 范围:您要从中统计唯一值的数据列。

现在,请在空白单元格中输入或复制以下公式,然后同时按下 Ctrl + Shift + Enter 键以获取正确的结果:

=SUM(IF(ISNUMBER(A2:A12)*COUNTIF(A2:A12,A2:A12)=1,1,0))

doc-count-unique-values-3


公式解释:

=SUM(IF(ISNUMBER(A2:A12)*COUNTIF(A2:A12,A2:A12)=1,1,0))

  • ISNUMBER(A2:A12):此 ISNUMBER 函数用于检查列表 A2:A12 中的值是否为数字。如果是数字,返回 TRUE;如果不是数字,返回 FALSE。因此,您将得到一个类似这样的数组:{TRUE;TRUE;TRUE;TRUE;TRUE;TRUE;TRUE;TRUE;TRUE;TRUE;TRUE}。
  • COUNTIF(A2:A12,A2:A12):COUNTIF 函数计算每个值在特定范围内出现的次数,它将返回这样的结果:{1;2;2;2;2;1;1;3;3;3;1}。
  • ISNUMBER(A2:A12)*COUNTIF(A2:A12,A2:A12)= {TRUE;TRUE;TRUE;TRUE;TRUE;TRUE;TRUE;TRUE;TRUE;TRUE;TRUE}* {1;2;2;2;2;1;1;3;3;3;1}:这两个表达式相乘得到这样的结果:{1;2;2;2;2;1;1;3;3;3;1}。
  • IF(ISNUMBER(A2:A12)*COUNTIF(A2:A12,A2:A12)=1,1,0)=IF({1;2;2;2;2;1;1;3;3;3;1}=1,1,0):这里的 IF 函数检查数组中的每个值是否等于 1:如果是,返回数字 1;如果不是,返回数字 0。结果如下:{1;0;0;0;0;1;1;0;0;0;1}。
  • SUM(IF(ISNUMBER(A2:A12)*COUNTIF(A2:A12,A2:A12)=1,1,0))=SUM({1;0;0;0;0;1;1;0;0;0;1}):最后,SUM 函数将数组中的值相加,并返回唯一值的总数:4。

在 Excel 365 中统计列中唯一数字值或日期的数量

在 Excel 365 中,有一个新的简单函数叫 UNIQUE。将此函数嵌套在 COUNT 函数中可以帮助您快速完成此任务。

统计列中唯一数字值或日期的数量

在 Excel 365 中统计唯一数字值或日期的通用语法为:

=COUNT(UNIQUE(range))
  • 范围:您要从中统计唯一值的数据列。

请在空白单元格中输入或复制以下公式并按 Enter 键获取结果,见截图:

=COUNT(UNIQUE(A2:A12))

doc-count-unique-values-4


公式解释:

=COUNT(UNIQUE(A2:A12))

  • UNIQUE(A2:A12):此 UNIQUE 函数从列表中提取所有唯一值,您将得到一个类似这样的数组列表:{258;560;774;801;985;990;1569}。
  • COUNT(UNIQUE(A2:A12))=COUNT({258;560;774;801;985;990;1569}):此 COUNT 函数计算数值的数量并返回结果:7。

统计列中仅出现一次的唯一数字值或日期的数量

此 UNIQUE 函数还可以从列表中提取恰好出现一次的唯一值,通用语法为:

=COUNT(UNIQUE(range,0,1))
  • 范围:您要从中统计唯一值的数据列。

在您希望返回结果的单元格中输入或复制以下公式,然后按 Enter 键,见截图:

=COUNT(UNIQUE(A2:A12,0,1))

doc-count-unique-values-5


公式解释:

=COUNT(UNIQUE(A2:A12,0,1))

  • UNIQUE(A2:A12,0,1):此 UNIQUE 函数从列表中提取仅出现一次的唯一值,您将得到一个类似这样的数组列表:{258;801;985;1569}。
  • COUNT(UNIQUE(A2:A12,0,1))=COUNT({258;801;985;1569}):此 COUNT 函数计算数值的数量并返回结果:4。

提示:上述所有公式同样适用于统计列中唯一日期的数量。


相关函数:

  • SUM:
  • Excel 的 SUM 函数返回提供的值的总和。
  • FREQUENCY:
  • FREQUENCY 函数计算值在值范围内出现的频率,然后返回一个垂直数组的数字。
  • ISNUMBER:
  • Excel 的 ISNUMBER 函数当单元格包含数字时返回 TRUE,否则返回 FALSE。
  • COUNTIF:
  • COUNTIF 函数是 Excel 中的一个统计函数,用于计算满足条件的单元格数量。
  • COUNT:
  • COUNT 函数用于计算包含数字的单元格数量,或计算参数列表中的数字数量。
  • UNIQUE:
  • UNIQUE 函数返回列表或范围内的唯一值列表。

更多文章:

  • 基于条件统计唯一数字值的数量
  • 在 Excel 工作表中,您可能会遇到一个问题,即根据特定条件统计唯一数字值的数量。例如,如何从报告中统计产品“T恤”的唯一数量值,如下截图所示?在本文中,我将展示一些公式来在 Excel 中实现此任务。
  • 统计等于多个值之一的单元格数量
  • 假设我在 A 列中有一系列产品,现在我想从范围 C4:C6 中列出的特定产品 Apple、Grape 和 Lemon 获取总数量,如下截图所示。通常,在 Excel 中,简单的 COUNTIF 和 COUNTIFS 函数在此场景下不起作用。本文将介绍如何通过结合 SUMPRODUCT 和 COUNTIF 函数快速轻松地解决此问题。
  • 统计包含特定字符数的单元格数量
  • 如果您想统计包含一定数量字符(如 5 个字符)的单元格数量,如下截图所示。在 Excel 中,COUNTIF 函数可以帮到您。在本文中,我将介绍如何获取包含确切 x 个字符的单元格数量或包含超过一定数量字符的单元格数量。

最佳的办公生产力工具

Kutools for Excel - 助您脱颖而出

🤖 Kutools AI 助手:基于以下功能彻底改变数据分析方式:智能执行   |  生成代码  |  创建自定义公式  |  分析数据并生成图表  |  调用Kutools函数
热门功能查找、高亮或标记重复项  |  删除空行  |  合并列或单元格而不丢失数据  |  四舍五入无需公式 ...
超级VLookup多条件  |  多值  |  跨多个工作表  |  模糊查找...
高级下拉列表简易下拉列表  |  级联下拉列表  |  多选下拉列表...
列管理器添加指定数量的列  |  移动列  |  切换隐藏列的可见状态  比较列以 选择相同和不同的单元格 ...
精选功能网格聚焦  |  设计视图  |  增强编辑栏  |  工作簿与工作表管理器 | 资源库(自动文本)  |  日期提取  |  合并数据  |  加密/解密单元格  |  按列表发送电子邮件  |  超级筛选  |  特殊筛选(筛选粗体/斜体/删除线...) ...
排名前15的工具集12个 文本 工具添加文本删除特定字符 ...)  |  50多种 图表 类型甘特图 ...)  |  40多种实用 公式基于生日计算年龄 ...)  |  19个 插入 工具插入二维码从路径插入图片 ...)  |  12个 转换 工具小写金额转大写汇率转换 ...)  |  7个 合并与拆分 工具高级合并行分割Excel单元格 ...)  |  ... 还有更多

Kutools for Excel拥有超过300种功能,确保您需要的功能只需一键即可实现...


Office Tab - 在Microsoft Office(包括Excel)中启用标签式阅读和编辑

  • 一秒内切换数十个打开的文档!
  • 每天为您减少数百次鼠标点击,告别鼠标手。
  • 在查看和编辑多个文档时,您的工作效率将提高50%。
  • 为Office(包括Excel)带来高效的标签页,就像Chrome、Edge和Firefox一样。