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

如何在Google Sheets中计算列空单元格对应左侧首个非空值的总和

实现方法

可以直接用数组公式结合LOOKUP的技巧实现,无需新建列,还能自动适配新增的日期列:

核心公式(一次性生成所有Deleted值)

在Deleted行的第一个日期单元格(例如B8,对应Date1)输入以下公式:

=BYCOL(B2:7, LAMBDA(col, 
  LET(
    col_num, COLUMN(col),
    left_range, IF(col_num=COLUMN(B2), "", OFFSET(col, 0, 1-col_num+COLUMN(B2), , col_num-COLUMN(B2))),
    IF(
      col_num=COLUMN(B2),
      0,
      SUM(ARRAYFORMULA(IF(ISBLANK(col), LOOKUP(2, 1/(left_range<>""), left_range), 0)))
    )
  )
))

公式说明

  1. BYCOL(B2:7, LAMBDA(col, ...)):遍历所有日期列(从B2到第7行的所有列,根据你的实际数据行数调整7),对每一列col执行后续逻辑。
  2. LEFT_RANGE:动态生成当前列左侧的所有数据列(从第一日期列到当前列的前一列),自动适配新增列。
  3. LOOKUP(2, 1/(left_range<>""), left_range):获取每行左侧最后一个非空值(实现你需要的“行内左侧首个非空值”逻辑)。
  4. SUM(ARRAYFORMULA(...)):筛选出当前列中空单元格对应的行,将这些行的左侧非空值求和,得到Deleted值。

单列公式(针对单个日期列)

如果需要单独给某一列写公式(例如Date4对应的E8单元格),可以用:

=SUM(ARRAYFORMULA(IF(ISBLANK(E2:E7), LOOKUP(2, 1/(B2:D7<>""), B2:D7), 0)))

注意事项

  • 把公式中的B2:7、E2:E7、B2:D7替换成你实际的数据范围,行数根据你的Item数量调整。
  • 新增日期列后,BYCOL会自动包含新列,无需修改公式。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.27 08:50:06