Google Sheets:如何在筛选公式中遍历关键词列表求和
高效批量计算所有关键词的总和
给你两个不用逐个计算再相加的高效实现方案:
方法一:兼容所有Excel版本的SUMPRODUCT公式
使用以下公式即可一次性计算指定工作表中所有关键词对应的G列数值总和:
=SUMPRODUCT(INDIRECT("'"&B6&"'!G1:G600")*ISNUMBER(MATCH(INDIRECT("'"&B6&"'!B1:B600"),C1:C3,0)))
公式说明:
INDIRECT("'"&B6&"'!G1:G600"):引用B6下拉框指定的目标工作表的G列数值区域MATCH(INDIRECT("'"&B6&"'!B1:B600"),C1:C3,0):检查目标工作表B列的每个值是否匹配C1:C3中的关键词,匹配成功返回位置,失败返回错误值ISNUMBER(...):将匹配结果转换为1(匹配成功)或0(匹配失败),作为乘数筛选符合条件的G列值- SUMPRODUCT会自动对所有符合条件的G列值进行求和
方法二:适用于Excel 365/2021的动态数组公式
如果你的Excel支持动态数组,用下面的公式更直观简洁:
=SUM(FILTER(INDIRECT("'"&B6&"'!G1:G600"),ISNUMBER(MATCH(INDIRECT("'"&B6&"'!B1:B600"),C1:C3,0))))
公式说明:
- FILTER函数直接筛选出目标工作表中B列属于关键词列表的G列数据
- SUM函数对筛选结果求和
- 若关键词数量会变动,可将公式中的
C1:C3替换为动态范围C1:INDEX(C:C,COUNTA(C:C)),这样公式会自动包含C列所有非空的关键词单元格,无需手动调整范围
内容的提问来源于stack exchange,提问作者Michal Freiwald
相关产品推荐
相关产品推荐

