使用TOCOL函数将多列名单合并为一列,接着用UNIQUE函数去重,再用COUNTA函数统计非空唯一值,即可快速一步算出多行多列中的不重复人数,高效便捷。该公式依赖动态数组,旧版Excel需手动复制后删除重复项,操作繁琐且易出错。
Excel多行多列统计不重复人数快速技巧
时间:2026-07-09
浏览:407
文章目录
多行多列名单中统计不重复人数,使用一条公式即可快速完成:=COUNTA(UNIQUE(TOCOL(A2:E6,1)))。该公式的逻辑清晰直观:首先通过 TOCOL 将多列名单压缩为一列,接着由 UNIQUE 去除重复项,最后利用 COUNTA 统计剩余姓名的数量。整个过程一步到位,数据更新后结果会自动刷新。
当前操作软件:Microsoft Excel
软件版本:Microsoft 365
公式拆解说明:TOCOL(array, [ignore], [scan_by_column]) 负责将区域转换为一列,第二参数填写 1 表示忽略空白单元格;UNIQUE(array) 用于提取唯一值;COUNTA(value1,...) 则统计非空结果的数量。需要留意的是,TOCOL 属于较新的动态数组函数,WPS 或旧版 Excel 可能不支持,使用前建议先确认版本兼容性。
第一步:确认需要统计的名单区域
首先框定原始姓名区域。示例中 A2:E6 为 5 天的报名名单,同一人可能出现在不同日期,也可能存在空白单元格;统计目标是计算总共有多少个不同的人员。
第二步:使用 TOCOL 将多列名单压缩为一列
在空白位置输入 =TOCOL(A2:E6,1)。第二参数 1 会跳过空白单元格,避免空白内容影响去重结果。单独测试这一步,可以快速确认原始区域是否选择正确。

第三步:套用 UNIQUE 提取唯一姓名
将公式改为 =UNIQUE(TOCOL(A2:E6,1)),Excel 会自动将重复出现的姓名仅保留一次。溢出结果中的名单,即为实际参与统计的不重复人员清单。

第四步:使用 COUNTA 获取人数
最终公式为 =COUNTA(UNIQUE(TOCOL(A2:E6,1)))。示例结果为 7,表示该多行多列名单中共有 7 个不同姓名。后续新增或删除原始名单中的姓名时,结果会自动重新计算。

旧版 Excel 的处理方法
如果当前版本没有 TOCOL 函数,可以先将多列名单复制到一列,再使用“数据”选项卡中的“删除重复项”功能,最后查看剩余姓名数量。该方法不是动态公式,但在旧版本和部分 WPS 环境中更为稳妥。
核对结果时需要注意三点:姓名前后不要有多余空格;同一个人的不同写法会被视为两个人;如果名单中包含工号,优先按工号去重,比单纯按姓名去重更准确。
实用工具推荐
绿化、压缩、噪点和虚拟水印,自由调节做旧程度。
选择画质和输出格式,预览压缩前后的大小。