如何在Excel的SUMIF/SUMIFS中引用多个结构化表格按类别求和
错误原因
- 缺少外层聚合函数:SUMIFS本身不支持直接处理多区域数组返回的多个求和结果,需要和你之前单元格区域引用的逻辑一致,用SUMPRODUCT包裹做结果聚合
- 字符串拼接语法错误:INDIRECT的参数拼接时&、引号位置错乱,结构化表名本身不需要额外包裹单引号,仅当表所属的工作表名含空格/特殊字符时,需要给工作表名加单引号
- 引用格式错误:未按结构化表的标准引用规则拼接字符串
正确公式
场景1:所有结构化表和当前公式所在表为同一个工作表,I11:I16仅存储纯表名(如tbl1、tbl_Dir_Inv_6855468)
=SUMPRODUCT(SUMIFS(INDIRECT(I$11:I$16&"[Value]"),INDIRECT(I$11:I$16&"[Category]"),[@Category]))
场景2:结构化表分布在不同工作表,I11:I16存储带工作表前缀的表名(格式为'工作表名'!表名,如'2月库存'!tbl_Inv_2)
公式和上述完全一致,不需要额外修改,I列的内容已经包含了合法的工作表路径前缀。
注意事项
- 如果使用Excel 365/2021及以上版本,可将SUMPRODUCT替换为SUM,效果完全一致;低版本Excel必须使用SUMPRODUCT才能自动处理数组运算,无需额外按Ctrl+Shift+Enter三键执行数组公式
- 请确保I11:I16内的表名/带路径的表名无拼写错误,否则INDIRECT会返回#REF!报错
内容的提问来源于stack exchange,提问作者geddeca
相关产品推荐
相关产品推荐

