在Excel中按条件统计唯一值
要根据另一列中的指定条件仅统计唯一值,您可以应用基于SUM、FREQUENCY、MATCH和ROW函数的数组公式。本分步指南将帮助您掌握该公式的最复杂用法。
如何在Excel中按条件统计唯一值?
如下产品表所示,同一店铺在不同日期销售了一些重复的产品。现在,我想获取从A店铺销售的产品的唯一计数,您可以应用以下公式。
通用公式
{=SUM(--(FREQUENCY(IF(range=criteria,MATCH(vals,vals,0)),ROW(vals)-ROW(vals.firstcell)+1)>0))}
参数
注意:此公式必须作为数组公式输入。应用公式后,如果公式周围有大括号,则表示数组公式已成功创建。
如何使用这些公式?
1. 选择一个空白单元格以放置结果。
2. 将以下公式输入其中,然后同时按下 Ctrl + Shift + Enter 键以获取结果。
=SUM(--(FREQUENCY(IF(E3:E16=H3,MATCH(D3:D16,D3:D16,0)),ROW(D3:D16)-ROW(D3)+1)>0))
注意:在此公式中,E3:E16 是包含与条件匹配的值的范围,H3 包含条件,D3:D16 是包含您希望统计的唯一值的范围,而 D3 是 D3:D16 的第一个单元格。您可以根据需要更改它们。
这个公式是如何工作的?
{=SUM(--(FREQUENCY(IF(E3:E16=H3,MATCH(D3:D16,D3:D16,0)),ROW(D3:D16)-ROW(D3)+1)>0))}
- IF(E3:E16=H3,MATCH(D3:D16,D3:D16,0)):
- IF({TRUE;FALSE;FALSE;TRUE;FALSE;FALSE;TRUE;FALSE;FALSE;TRUE;FALSE;},{1;2;3;2;1;1;3;2;1;1;1;2;3;2}):现在,对于数组 1 中的每个 TRUE 值,我们将获得数组 2 中的对应位置,而对于 FALSE,我们将获得 FALSE。这里您将得到一个新数组:{1;FALSE;FALSE;2;FALSE;FALSE;3;FALSE;FALSE;1;FALSE;FALSE;3;FALSE}。
- ROW(D3:D16)-ROW(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;FALSE;FALSE;2;FALSE;FALSE;3;FALSE;FALSE;1;FALSE;FALSE;3;FALSE},{1;2;3;4;5;6;7;8;9;10;11;12;13;14}):此处 FREQUENCY 函数返回给定数组中每个数字的频率:{2;1;2;0;0;0;0;0;0;0;0;0;0;0}。
- =SUM(--({2;1;2;0;0;0;0;0;0;0;0;0;0;0}>0)):
相关函数
Excel SUM 函数 Excel SUM 函数用于求和数值。
Excel FREQUENCY 函数 Excel FREQUENCY 函数计算值在值范围内出现的频率,然后返回一个垂直的数字数组。
Excel IF 函数 Excel IF 函数执行简单的逻辑测试,根据比较结果返回一个值(如果结果为 TRUE),或另一个值(如果结果为 FALSE)。
Excel MATCH 函数 Excel MATCH 函数在一个单元格范围内搜索特定值,并返回该值的相对位置。
Excel ROW 函数 Excel ROW 函数返回引用的行号。
相关公式
统计筛选列表中可见行的数量 本教程解释了如何使用 SUBTOTAL 函数在 Excel 中统计筛选列表中可见行的数量。
统计范围内的唯一值 本教程解释了如何使用指定公式在 Excel 列表中统计唯一值(排除重复项)。
按条件统计可见行 本教程提供了详细的步骤,帮助您按条件统计可见行。
在非连续范围内使用 COUNTIF 本分步指南演示了如何在 Excel 中的非连续范围内使用 COUNTIF 函数。
最佳的办公生产力工具
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 一样。