前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >统计不同值的7种方法

统计不同值的7种方法

作者头像
fanjy
发布于 2023-08-29 13:05:46
发布于 2023-08-29 13:05:46
4.5K00
代码可运行
举报
文章被收录于专栏:完美Excel完美Excel
运行总次数:0
代码可运行

标签:Excel技巧

很多时候,我们需要统计列表中的不同值的个数,在Excel中有多种方法实现。

首先,我们来解释什么是不同值和唯一值。不同值意味着值是不同的,例如列表{A, B, B, C}中的不同值是{A, B, C},不同值个数是3。而唯一值意味着值仅出现一次,例如列表{A, B, B, C}中的唯一值是{A, C},唯一值个数是2。

方法1:使用COUNTIFS函数

COUNTIFS函数允许基于一个或多个判断条件来统计值。如下图1所示的列表,统计列表中的不同值个数,使用公式:

=SUM(1/COUNTIFS(B5:B13,B5:B13))

图1

COUNTIFS函数用于查看列表中每个值出现了多少次。当将计数取倒数时,会得到一个分数值,列表中每个不同的值加起来就是1。然后,SUM函数将所有这些分数相加,总数就是列表中不同项目的数量。

方法2:使用UNIQUE函数

如下图2所示,很简单的公式:

=COUNTA(UNIQUE(B5:B13))

图2

UNIQUE函数返回列表中所有不同的值,COUNTA函数统计这些值的个数。

方法3:使用高级筛选

在单元格中输入公式:

=SUBTOTAL(103,B5:B13)

如下图3所示。

图3

公式中,103指示仅统计可见单元格。

然后,选择单元格区域B4:B13,单击功能区“数据”选项卡“排序和筛选”组中的“高级”命令。在“高级筛选”对话框中,勾选“选择不重复的记录”复选框,如下图4所示。

图4

单击“确定”按钮,结果如下图5所示。

图5

方法4:使用数据透视表

选择数据区域,单击功能区“插入”选项卡“表格”组中的“数据透视表”,在“来自表格或区域的数据透视表”对话框中,选取“现有工作表”单选按钮,选取在工作表中放置透视表的单元格位置,如下图6所示。

图6

在数据透视表字段中,选取要获取不同值计数的字段到行,如下图7所示。

图7

在工作表中,选择数据透视表数据,可以在底部状态栏中看到计数值为4,即为不同值个数,如下图8所示。

图8

方法5:使用数据透视表数据模型

选择数据区域,单击功能区“插入”选项卡“表格”组中的“数据透视表”,在“来自表格或区域的数据透视表”对话框中,选取“现有工作表”单选按钮,选取在工作表中放置透视表的单元格位置,勾选“将此数据添加到数据模型”复选框,如下图9所示。

图9

在“数据透视表字段”窗口,将“数据”字段拖至“值”窗口,然后单击其右侧下拉箭头,在快捷菜单中单击“值字段设置”,如下图10所示。

图10

在“值字段设置”对话框中,选取“计算类型”列表中的“非重复计数”,如下图11所示。

图11

单击“确定”,结果如下图12所示。

图12

方法6:删除重复值

选择数据列表,单击功能区“数据”选项卡“数据工具”组中的“删除重复值”命令,如下图13所示。

图13

在“删除重复值”对话框中,单击“全选”,如下图14所示。

图14

单击“确定”,Excel会给出一个消息框,显示保留的不同值数,如下图15所示。

图15

方法7:使用VBA

按Alt+F11组合键,打开VBE,插入一个标准模块,输入下面的代码:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
Function CountDistinctValues(rng As Range) As Integer
 Application.Volatile
 Dim var As Variant
 Dim distinctValues As New Collection
 On Error Resume Next
 For Each var In rng
   If Not (IsEmpty(var)) Then
     distinctValues.Add var, CStr(var)
   End If
 Next var
 CountDistinctValues = distinctValues.Count
End Function

在工作表中,输入公式:

=CountDistinctValues(B5:B13)

结果如下图16所示。

图16

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2023-05-04,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 完美Excel 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
Excel图表学习52: 清楚地定位散点图中的数据点
散点图是我们经常使用的一种图表类型,然而,当有许多个数据点时,往往很难弄清楚特定的数据点。其实,使用一些小技巧,我们能够很容易地定位散点图中特定的数据点,如下图1所示。
fanjy
2019/08/30
12.2K0
Excel实战技巧62: 获取不重复的值作为数据验证列表项
“数据验证”(在Excel 2013以前称为“数据有效性”)是Excel中的一项重要功能,它能够提供下拉列表供用户选择输入项,也能限制用户输入符合设定的数据。
fanjy
2019/11/20
7.8K0
Excel实战技巧62: 获取不重复的值作为数据验证列表项
精通Excel数组公式005:比较数组运算及使用一个或多个条件的聚合计算
在诸如基于条件查找最小值或最大值、计算标准偏差等情形时,Excel没有提供相应的内置函数,必须编写数组公式,其中往往涉及到在数组中使用比较运算符。
fanjy
2020/06/24
8.7K0
Excel小技巧46: 在单元格中输入连续数字的6种方法
很多时候,我们都需要在工作表中输入连续的数字,特别是用作数据唯一标识时。下面,我们将介绍6种输入连续数字的方法。
fanjy
2020/08/11
9K0
Excel小技巧46: 在单元格中输入连续数字的6种方法
筛选加粗字体格式的单元格的3种方法
在工作表中有很多数据,一些数据所在单元格设置为加粗字体格式,现在想要筛选出所有这些加粗字体格式的单元格。
fanjy
2022/11/16
5K0
筛选加粗字体格式的单元格的3种方法
在Exce中使用带有动态数组公式的切片器
Excel中,有一些特别的函数仅计算可见行,例如SUBTOTAL函数和AGGREGATE函数。本文示例使用SUBTOTAL函数。
fanjy
2023/08/29
8000
在Exce中使用带有动态数组公式的切片器
数据有效性+条件格式,升级这个有想象力的输入界面
在《数据有效性+条件格式,创建有想象力的输入界面》中,我们构建了如下图1所示的Excel工作表界面,使输入数据在用户面前能够清晰地展示。
fanjy
2021/12/08
1.9K0
数据有效性+条件格式,升级这个有想象力的输入界面
Excel应用实践23: 突出显示每行中的最小值
在工作表中有很多数据,想要自动标识出每行数据中最小值所在的单元格,这样方便快速找到每行中的最小数据,如下图1所示。
fanjy
2019/12/27
11K0
Excel应用实践23: 突出显示每行中的最小值
社群答疑精选02:不重复数据统计——如何统计员工负责的客户数?(续)
昨天详细整理了在完美Excel社群上回答Alpha朋友提出的问题解答思路和过程,详见:
fanjy
2020/08/05
1.3K0
社群答疑精选02:不重复数据统计——如何统计员工负责的客户数?(续)
Excel小技巧:在Excel中添加复选标记的15种方法(上)
我们经常会使用复选标记,用来表示任务已完成或测试已通过。在本文中,介绍在Excel工作簿中添加复选标记的15种方法。
fanjy
2022/11/16
5.3K0
Excel小技巧:在Excel中添加复选标记的15种方法(上)
Excel图表学习69:条件圆环图
每个切片的颜色显示在图表左侧的工作表单元格区域内。根据单元格包含的字母“R”、“Y”或“G”将它们填充为红色、黄色和绿色。这在工作表中很容易做到,但在图表中没有像这样更改颜色的机制。
fanjy
2021/07/12
8.2K0
Excel图表学习69:条件圆环图
Excel图表学习53: 创建动态的目标线
本文介绍一个在柱状图中创建动态目标线的技巧,如下图1所示,调节图表右侧的滚动条,可以看到左侧图表中用作目标线的红色直线作相应的调整。
fanjy
2019/09/09
1.6K0
Excel图表学习53: 创建动态的目标线
Excel小技巧37:使用高级筛选快速获取不重复值
很多时候我们都需要获取不重复值,也有很多方式可以获取不重复值,最方便的就是直接利用Excel内置的“高级筛选”功能。
fanjy
2020/06/03
2K0
Excel公式技巧70:统计有多少个不重复的值
有时候,一系列值中有很多重复的值,但我们想要知道其中有多少个不重复的值。例如下图1所示的工作表,在单元格区域B3:B13中有一些重复的值,但这都是由5个值重复输入组成的数据。
fanjy
2020/12/08
5.4K0
Excel公式技巧70:统计有多少个不重复的值
Excel图表学习:创建子弹图
为了尽可能轻松地创建你的第一个图表,将新工作表的名称更改为“GG”,然后设置数据区域如图所示。在创建图表后,可以根据需要重命名工作表或移动数据。
fanjy
2022/11/16
4.1K0
Excel图表学习:创建子弹图
运行Excel VBA的15种方法2
可以自定义功能区,将宏代码关联到功能区选项卡组中。这种方法尤其适合于组织布置许多自定义宏的运行。
fanjy
2023/08/30
7710
运行Excel VBA的15种方法2
运行Excel VBA的15种方法1
在“宏选项”对话框中,在快捷键框中输入要使用的快捷键字母,还可以添加相应的说明,如下图5所示。
fanjy
2023/08/30
2.9K0
运行Excel VBA的15种方法1
Excel实战技巧87:使用复选框控制是否显示相关图片
本文介绍的技术稍有不同,这里使用复选框来控制相关的图片是否显示,当选取复选框时,显示图片,取消选择时,图片消失。
fanjy
2020/09/17
3.5K0
Excel实战技巧87:使用复选框控制是否显示相关图片
Excel图表学习51: 根据选择高亮显示图表系列数据点
本文分享一个动态图表示例,效果如下图1所示。当按下工作表中不同的按钮时,图表会自动更新,高亮显示相应数据系列的数据点。
fanjy
2019/08/23
4.2K0
Excel图表学习51: 根据选择高亮显示图表系列数据点
Excel技巧:显示分数的7种方法
有时候,我们需要在工作表中以分数形式显示数字,然而,Excel不会这样想,它会自动将你输入的分数转换为日期或其它形式。本文介绍如何方便地在Excel工作表中显示分数。
fanjy
2023/02/24
7.2K0
Excel技巧:显示分数的7种方法
推荐阅读
相关推荐
Excel图表学习52: 清楚地定位散点图中的数据点
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
本文部分代码块支持一键运行,欢迎体验
本文部分代码块支持一键运行,欢迎体验