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

Google Sheet数组公式自动化:多列规则计数问题求助

Google Sheets 数组公式实现方案

B/C/D列循环计数修复(解决C列出现0的问题)

针对「Copy of Main Challenge Tab」标签页,用以下数组公式一次性实现自动循环计数,无需逐行拖拽:

B列公式(每30行递增1,对应C到5且D到6后重置)

=ARRAYFORMULA(IF(ROW(A:A)=1, "B列标题", CEILING(ROW(A:A)/30, 1)))

逻辑:每30行(5组×6行)为一个周期,自动向上取整实现B列递增。

C列公式(每6行递增1,1-5循环,避免出现0)

=ARRAYFORMULA(IF(ROW(A:A)=1, "C列标题", MOD(CEILING((ROW(A:A)-1)/6, 1)-1, 5)+1))

逻辑:先计算每行对应的6行组序号,用MOD取余后+1,确保结果始终在1-5之间,不会出现0。

D列公式(1-6循环)

=ARRAYFORMULA(IF(ROW(A:A)=1, "D列标题", MOD(ROW(A:A)-1, 6)+1))

逻辑:通过取余运算实现1-6的循环计数,和原规则一致。

F列可重复递增计数(Q列非空时留空)

如果你的重复规则匹配示例17,18,19,19,20,20…(每4个有效行中前2行递增,后2行重复当前计数),同时Q列非空时留空,用以下公式:

=ARRAYFORMULA(IF(ROW(A:A)=1, "F列标题", IF(Q:Q<>"",,
  SCAN(17, ROW(A:A), LAMBDA(acc, row,
    IF(row=1, acc,
      IF(Q:row<>"", acc,
        IF(MOD(COUNTIFS(ROW(A:A), "<="&row, Q:Q, ""), 4)>=2, acc, acc+1)
      )
    )
  ))
)))

逻辑:

  1. 用SCAN函数累计计数,初始值设为17
  2. 统计当前行及之前Q列为空的总行数,按每4行的周期判断是否重复当前计数
  3. Q列非空时保持上一次计数(最终显示为空)

若需要基于其他标签页的计数序列实现重复,可调整为:

=ARRAYFORMULA(IF(ROW(A:A)=1, "F列标题", IF(Q:Q<>"",, 
  VLOOKUP(COUNTIFS(ROW(A:A), "<="&ROW(A:A), Q:Q, ""), 
  {SEQUENCE(COUNTA(参考标签页!A:A)), 参考标签页!A:A}, 2, TRUE)
)))

逻辑:通过统计有效行数,匹配「参考标签页」的计数序列,自动同步递增并支持重复。


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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.12 11:10:38