跳到主要内容

在 Excel 中计算范围内的唯一值

本教程介绍了如何使用指定的公式在 Excel 中的列表中仅计算重复项中的唯一值。


如何计算Excel中一列中的唯一值?

假设您有一个如下面的屏幕截图所示的产品表,要仅计算产品列中的唯一值,您可以应用以下公式之一。

通用公式

=SUMPRODUCT(--(FREQUENCY(MATCH(range,range,0),ROW(range)-ROW(range.firstcell)+1)>0))

=SUMPRODUCT(1/COUNTIF(range,range))

参数

范围:您只想计算唯一值的单元格范围;
范围.firstcell:范围的第一个单元格。

如何使用这些公式?

1.选择一个空白单元格以输出结果。

2. 在选定的单元格中输入以下公式之一,然后按 输入 键。

=SUMPRODUCT(--(FREQUENCY(MATCH(D3:D16,D3:D16,0),ROW(D3:D16)-ROW(D3)+1)>0))

=SUMPRODUCT(1/COUNTIF(D3:D16,D3:D16))

笔记:

1) 在这些公式中,D3:D16 是您只想计算唯一值的单元格范围,而 D3 是该范围的第一个单元格。 您可以根据需要更改它们。
2) 如果指定范围内存在空单元格,第一个公式将返回#N/A 错误,第二个公式将返回#DIV/0 错误。

公式说明

=SUMPRODUCT(--(FREQUENCY(MATCH(D3:D16,D3:D16,0),ROW(D3:D16)-ROW(D3)+1)>0))

  • 比赛(D3:D16,D3:D16,0):MATCH函数获取D3:D16范围内每一项的位置,如果数值在数据范围内出现多次,会返回相同的位置,得到这样的数组{1;2;3;2;1 ;1;3;2;1;1;1;2;3;2}。
  • 行(D3:D16)-行(D3)+1: 这里 ROW 函数返回引用 D3:D16 和 D3 的行号,你会得到 {3;4;5;6;7;8;9;10;11;12;13;14;15;16}- {3}+1。
  • 数组中的每个数字减去数字 3,然后加 1,最后返回 {1;2;3;4;5;6;7;8;9;10;11;12;13;14}。
  • FREQUENCY({1;2;3;2;1;1;3;2;1;1;1;2;3;2},{1;2;3;4;5;6;7;8;9;10;11;12;13;14}):频率函数计算每个数字在数据数组中出现的频率,并返回这样一个数字数组{6;5;3;0;0;0;0;0;0;0;0;0;0;0 }.
  • SUMPRODUCT(--{6;5;3;0;0;0;0;0;0;0;0;0;0;0}>0):
{6;5;3;0;0;0;0;0;0;0;0;0;0;0}>0:数组中的每个数都与0比较,如果大于0则返回TRUE,否则返回FALSE。 你会得到一个像这样的真假数组 {TRUE;TRUE;TRUE;FALSE;FALSE;FALSE;FALSE;FALSE;FALSE;FALSE;FALSE;FALSE;FALSE;FALSE};
--{真;真;真;假;假;假;假;假;假;假;假;假;假;假}:这两个减号将“TRUE”转换为 1,将“FALSE”转换为 0。这里您将得到一个新数组为{1;1;1;0;0;0;0;0;0;0;0;0 ;0;0}。
SUMPRODUCT({1;1;1;0;0;0;0;0;0;0;0;0;0;0}):SUMPRODUCT 函数对数组中的所有数字求和并返回最终结果为 3。

=SUMPRODUCT(1/COUNTIF(D3:D16,D3:D16))

  • 计数(D3:D16,D3:D16):COUNTIF 函数使用所有相同的值作为条件,计算每个值在 D3:D16 范围内出现的频率。 它返回一个像这样的数组 {6;5;3;5;6;6;3;5;6;6;6;5;3;5},这意味着笔记本电脑出现了 6 次,投影仪出现了 5 次,显示器出现了出现3次。
  • 1/{6;5;3;5;6;6;3;5;6;6;6;5;3;5}: 数组中的每个数字除以 1,并返回一个新数组为 {0.166666666666667;0.2;0.333333333333333;0.2;0.166666666666667;0.166666666666667;0.2;
    0.333333333333333;0.166666666666667;0.166666666666667;0.166666666666667;0.333333333333333;0.2;
    0.333333333333333;}。
  • SUMPRODUCT({0.166666666666667;0.2;0.333333333333333;0.2;0.166666666666667;0.166666666666667;
    0.2;0.333333333333333;0.166666666666667;0.166666666666667;0.166666666666667;0.333333333333333;0.2;
    0.333333333333333;})
    : 然后 SUMPRODUCT 函数对数组中的所有数字求和并返回最终结果为 3。

相关功能

Excel SUMPRODUCT函数
Excel SUMPRODUCT 函数可用于将两个或多个列或数组相乘,然后得到乘积的总和。

Excel 频率函数
Excel FREQUENCY 函数计算值在一个值范围内出现的频率,然后返回一个垂直的数字数组。

Excel MATCH功能
Excel MATCH 函数在单元格范围内搜索特定值,并返回该值的相对位置。

Excel ROW功能
Excel ROW函数返回引用的行号。

Excel COUNTIF 函数
Excel COUNTIF 函数用于计算满足条件的单元格数量。


相关公式

计算过滤列表中可见行的数量
本教程说明如何使用 SUBTOTAL 函数计算 Excel 中筛选列表中的可见行数。

使用条件计算唯一值
此分步指南有助于根据另一列中的指定条件仅计算唯一值

使用条件计算可见行
本教程提供了详细的步骤来帮助您使用条件计算可见行。

在非连续范围上使用 COUNTIF
本分步指南演示了如何在 Excel 中的非连续区域上使用 countif 函数。


最佳办公效率工具

Kutools for Excel-帮助您从人群中脱颖而出

🤖 Kutools 人工智能助手:基于以下内容彻底改变数据分析: 智能执行   |  生成代码  |  创建自定义公式  |  分析数据并生成图表  |  调用 Kutools 函数...
热门特色: 查找、突出显示或识别重复项  |  删除空白行  |  合并列或单元格而不丢失数据  |  不使用公式进行四舍五入 ...
超级VLookup: 多重标准  |  多重价值  |  跨多页  |  模糊查询...
副词。 下拉列表: 简易下拉列表  |  依赖下拉列表  |  多选下拉列表...
列管理器: 添加特定数量的列  |  移动列  |  切换隐藏列的可见性状态  将列与 选择相同和不同的单元格 ...
特色功能: 网格焦点  |  设计图  |  大方程式酒吧  |  工作簿和工作表管理器 | 资源库 (自动文本)  |  日期选择器  |  合并工作表  |  加密/解密单元格  |  按列表发送电子邮件  |  超级筛选  |  特殊过滤器 (过滤粗体/斜体/删除线...)...
前 15 个工具集12 文本 工具 (添加文本, 删除字符 ...)  |  50+ 图表 类型 (甘特图 ...)  |  40+ 实用 公式 (根据生日计算年龄 ...)  |  19 插入 工具 (插入二维码, 从路径插入图片 ...)  |  12 转化 工具 (小写金额转大写, 货币兑换 ...)  |  7 合并与拆分 工具 (高级组合行, 拆分 Excel 单元格 ...)  |  ... 和更多

Kutools for Excel 拥有超过 300 个功能, 确保只需点击一下即可获得您所需要的...

产品描述


Office 选项卡 - 在 Microsoft Office(包括 Excel)中启用选项卡式阅读和编辑

  • 一秒钟即可在数十个打开的文档之间切换!
  • 每天为您减少数百次鼠标单击,告别鼠标手。
  • 查看和编辑多个文档时,可将您的工作效率提高50%。
  • 为 Office(包括 Excel)带来高效的选项卡,就像 Chrome、Edge 和 Firefox 一样。
Comments (0)
No ratings yet. Be the first to rate!
There are no comments posted here yet
Please leave your comments in English
Posting as Guest
×
Rate this post:
0   Characters
Suggested Locations