Excel中如何在筛选后的列表中统计唯一值
筛选后统计Excel O列唯一序列号数量的方法
通用方法(兼容所有Excel版本)
直接在任意空白单元格输入以下公式,记得把O2:O1000替换成你O列实际的数据范围(不要包含表头):
=SUMPRODUCT((SUBTOTAL(103,OFFSET(O2,ROW(O2:O1000)-ROW(O2),0))=1)/COUNTIF(O2:O1000,O2:O1000&""))
- 原理:
SUBTOTAL(103,...)会标记出O列的可见行(返回1为可见,0为隐藏),再通过COUNTIF统计每个序列号的出现次数,最后仅对可见行的唯一值做累加,得到最终数量。
简化方法(仅Excel 365/2021及以上版本可用)
如果你的Excel支持动态数组函数,用这个更直观的公式:
=ROWS(UNIQUE(FILTER(O2:O1000,SUBTOTAL(103,OFFSET(O2,ROW(O2:O1000)-ROW(O2),0))=1)))
- 原理:先通过
FILTER提取O列的可见数据,再用UNIQUE去重,最后用ROWS统计去重后的行数,就是唯一序列号的数量。
手动操作法(无需公式)
- 点击O列任意数据单元格,按
Alt+;快速选中所有可见单元格 - 复制选中内容,粘贴到空白工作表的某一列
- 选中粘贴后的列,点击「数据」选项卡→「删除重复值」,完成后看状态栏的计数,或者用
=COUNTA(目标列范围)统计行数即可。
内容的提问来源于stack exchange,提问作者batteryanalysis
相关产品推荐
相关产品推荐

