You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Google Sheets中INDIRECT+COUNTIF仅识别首个工作表问题求助

Google Sheets跨工作表统计指定值出现次数的解决方案

问题原因

你之前用的=SUM(COUNTIF(INDIRECT("'" & I2:I43 & "'!A2"),C2))及ArrayFormula版本无效,是因为COUNTIF仅能处理单个单元格/范围引用,当INDIRECT返回多个工作表的引用数组时,它只会读取第一个引用,无法遍历所有工作表。

有效公式(无需脚本)

直接用SUMPRODUCT结合数组运算实现跨表统计:

=SUMPRODUCT(--(INDIRECT("'"&I2:I43&"'!A2")=C2))

公式解释

  • INDIRECT("'"&I2:I43&"'!A2"):根据I列的工作表名称列表,生成所有对应工作表中A2单元格的引用数组
  • (INDIRECT(...) = C2):逐个对比每个工作表A2的值是否等于目标值C2,返回由TRUE/FALSE组成的布尔数组
  • --:将布尔值转换为对应的1(TRUE)或0(FALSE)
  • SUMPRODUCT:对所有转换后的数值求和,得到目标值在所有工作表A2中的总出现次数

补充优化(处理空工作表名称)

如果I列存在空单元格,公式会报错,可添加过滤排除空值:

=SUMPRODUCT(--(INDIRECT("'"&FILTER(I2:I43,I2:I43<>"")&"'!A2")=C2))

内容的提问来源于stack exchange,提问作者Erwin Biere

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.09 12:03:18