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

Google Sheets定位同级列最后非空单元格自动统计子任务数量

解决方案

你可以不用手动给子任务补填task_id,直接用Google Sheets内置的SCAN函数先批量识别每个子任务所属的父级task_id,再嵌套统计逻辑即可,以下是两种常用实现方式:

方案1:直接在右侧统计列生成结果(无需新增辅助列)

假设你的左侧表A列是task_id(仅主任务行有值)、B列是subtask内容(子任务行有值、主任务行空),右侧表D列是待统计的task_id列表,在E2单元格输入下面的数组公式即可自动生成所有行的统计结果:

=ARRAYFORMULA(IF(ISBLANK(D2:D),,
  COUNTIF(
    SCAN(,A2:A,LAMBDA(acc,cur,IF(cur<>"",cur,acc))),
    D2:D
  )-1
))

公式逻辑说明:

  • SCAN函数会从A列第一行开始遍历,遇到非空的task_id就更新当前记录值,遇到空值就延用之前记录的task_id,相当于自动给所有子任务行匹配上了对应的父级task_id
  • 最后统计每个目标task_id出现的次数后减1,就是排除主任务行本身的子任务数量

方案2:先自动补全所属task_id(方便后续其他计算)

如果之后还有其他基于子任务所属task_id的计算需求,可以先在A列旁边插入新的辅助列(比如C列),在C2输入以下公式自动填充所有行的所属task_id:

=ARRAYFORMULA(SCAN(,A2:A,LAMBDA(acc,cur,IF(cur<>"",cur,acc))))

之后统计的时候直接用你之前的COUNTIFS逻辑引用C列即可,不用手动填任何task_id。


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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.26 07:36:03