如何统计同一工作簿所有工作表中指定name的出现总次数?
统计工作簿中所有工作表的Name出现总次数
场景说明
单个Excel工作簿,第一张为汇总详情表(样式:A列存待统计的Name,B列用于展示总次数,表头为「Name」「总次数」),其余均为详情表(样式:包含Name列,每行对应一条记录)。需求是统计每个Name在所有详情表中的出现总次数,预期输出为汇总表中Name与对应总次数的对应列表。
实现方法
1. 自动获取所有不重复的Name(Excel 365/2021及以上适用)
如果需要自动从所有详情表提取不重复的Name到汇总表A列,使用UNIQUE+VSTACK组合公式:
=UNIQUE(VSTACK(Sheet2!A:A, Sheet3!A:A, Sheet4!A:A))
将公式中的Sheet2、Sheet3等替换为实际的详情表名称,所有详情表的Name列通过VSTACK合并后,UNIQUE提取不重复值。
2. 统计每个Name的总出现次数
方法一:工作表名称有规律(如Sheet2、Sheet3...SheetN)
使用SUMPRODUCT+COUNTIF+INDIRECT自动遍历所有详情表:
=SUMPRODUCT(COUNTIF(INDIRECT("Sheet"&ROW(INDIRECT("2:"&SHEETS()))&"!A:A"), A2))
SHEETS()返回工作簿总工作表数ROW(INDIRECT("2:"&SHEETS()))生成从第2张表到最后一张表的序号序列INDIRECT拼接成每个详情表的Name列引用,COUNTIF统计单表中Name出现次数,SUMPRODUCT求和所有表的结果
方法二:工作表名称无规律
手动列出所有详情表,用SUM+COUNTIF直接求和:
=SUM(COUNTIF(Sheet2!A:A, A2), COUNTIF(销售详情!A:A, A2), COUNTIF(运营详情!A:A, A2))
将所有详情表的Name列引用和统计公式用SUM包裹,直接汇总单表统计结果。
内容的提问来源于stack exchange,提问作者MAK
相关产品推荐
相关产品推荐

