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

Google Sheets筛选可见行时按文本条件列求和的方法求助

Google Sheets 筛选后统计可见行的Valid/Invalid数值总和

方法1:使用AGGREGATE函数(兼容新旧版本)

AGGREGATE函数支持忽略筛选隐藏的行,结合IF条件筛选Valid/Invalid:

  • 统计Visible行中Valid对应的S列总和:
=AGGREGATE(9, 5, IF($T$6:$T="Valid", $S$6:$S, ""))
  • 统计Visible行中Invalid对应的S列总和:
=AGGREGATE(9, 5, IF($T$6:$T="Invalid", $S$6:$S, ""))

说明:旧版Google Sheets需要按Ctrl+Shift+Enter作为数组公式输入,新版会自动识别数组计算。参数9代表求和,5代表忽略筛选隐藏的行。

方法2:使用SUBTOTAL+BYROW(新版Google Sheets)

通过SUBTOTAL判断行是否可见,结合BYROW遍历每行筛选条件后求和:

  • 统计Visible行中Valid对应的S列总和:
=SUM(BYROW($A$6:$T, LAMBDA(row, IF(AND(INDEX(row,1,20)="Valid", SUBTOTAL(103, INDEX(row,1,1))), INDEX(row,1,19), 0))))
  • 统计Visible行中Invalid对应的S列总和:
=SUM(BYROW($A$6:$T, LAMBDA(row, IF(AND(INDEX(row,1,20)="Invalid", SUBTOTAL(103, INDEX(row,1,1))), INDEX(row,1,19), 0))))

说明:SUBTOTAL(103, 单元格)用于判断该行是否可见(可见返回1,隐藏返回0),INDEX分别取T列(第20列)的标识和S列(第19列)的数值,最后SUM汇总符合条件的数值。

为什么SUMIF不生效?

SUMIF函数会计算所有行的数据,包括筛选后隐藏的行,无法识别手动筛选的可见状态,因此需要用支持忽略隐藏行的AGGREGATE或带10开头参数的SUBTOTAL来实现需求。

内容的提问来源于stack exchange,提问作者Leon Oosthuysen

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.03 01:31:05