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

求Google Sheets数组公式:按报名日期统计用户累计报名次数

Google Sheets 按日期统计用户累计报名次数(含本次)

问题背景

数据从第4行开始记录,1-3行为固定表头,后续会新增数据或调整排序,要求基于报名日期而非行号,统计每个用户截至本次报名日期的累计报名次数(包含本次)。之前尝试的两个Arrayformula公式均未得到预期结果:

  • 公式1:=Arrayformula({"Number Times Enrolled";if(A4:A="",,countif($A4:A,(Row($A4:A)&"<="&Row($A4:A))))} 返回全0
  • 公式2:=Arrayformula({"Number Times Enrolled";if(A4:A="",,countifs(A4:A,A4:A,Row(A4:A),"<="&Row(A4:A)))}) 结果不符合预期

解决方案

假设A列为用户唯一标识、B列为报名日期,将以下公式放入目标统计列的第4行(比如C4),即可自动计算整列的累计次数:

=Arrayformula(IF(A4:A="","",COUNTIFS(A4:A,A4:A,B4:B,"<="&B4:B)))

如果需要让公式自动适配1-3行的表头结构,可以调整为:

=Arrayformula(IF(ROW(A:A)=3,"累计报名次数",IF(ROW(A:A)<3,"",IF(A4:A="","",COUNTIFS(A4:A,A4:A,B4:B,"<="&B4:B)))))

公式说明

  • Arrayformula:实现整列自动计算,无需手动下拉公式
  • COUNTIFS的两个核心条件:
    1. 匹配当前行的用户标识(A4:A,A4:A)
    2. 筛选出该用户报名日期小于等于当前行报名日期的记录(B4:B,"<="&B4:B),这是基于日期统计的关键,替代了错误的行号判断逻辑
  • IF嵌套:处理空行和表头区域,避免无效计算

之前公式的问题

  • 第一个公式的COUNTIF条件写法错误,将行号拼接成字符串作为匹配规则,无法匹配用户数据,因此返回全0
  • 第二个公式用行号判断记录先后,但数据排序后行号和实际报名日期顺序不一致,导致统计结果错误

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.16 13:50:08