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

Excel公式需求:计算2024年各月累加唯一ID数量

统计2024年累计唯一ID的Excel公式方案

问题背景

现有如下数据表格:

IDMonth numYear
112024
112024
222024
122024
222024
222024
332024
112023

需要统计2024年每个月份及之前所有月份的唯一ID累计数量,预期结果如下:

January 2024: 1 distinct ID
February 2024: 2 distinct IDs(统计1月+2月的唯一ID)
March 2024: 3 distinct IDs(统计1月+2月+3月的唯一ID)

公式方案

适合Excel 365/2021及以上版本(支持动态数组)

如果单个计算某月份(比如目标月份放在单元格F2,输入1代表1月),用这个公式:

=COUNTA(UNIQUE(FILTER(A:A,(C:C=2024)*(B:B<=F2))))
  • 步骤拆解:
    1. FILTER(A:A,(C:C=2024)*(B:B<=F2)) 筛选出2024年里月份≤目标月份的所有ID
    2. UNIQUE(...) 对筛选出的ID去重
    3. COUNTA(...) 统计去重后的ID总数

要是想一次性生成1-12月的所有结果,直接用这个公式,会自动输出12行符合格式的结果:

=MAP(SEQUENCE(12),LAMBDA(m,TEXT(DATE(2024,m,1),"mmmm yyyy")&": "&COUNTA(UNIQUE(FILTER(A:A,(C:C=2024)*(B:B<=m))))&" distinct ID"&IF(COUNTA(UNIQUE(FILTER(A:A,(C:C=2024)*(B:B<=m))))<>1,"s","")))

适合旧版Excel(不支持动态数组)

目标月份放在F2,输入公式后要按 Ctrl+Shift+Enter 作为数组公式确认:

=SUM(IF(FREQUENCY(IF((C:C=2024)*(B:B<=F2),A:A),A:A)>0,1))
  • 步骤拆解:
    1. IF((C:C=2024)*(B:B<=F2),A:A) 生成符合条件的ID数组,不符合条件的返回FALSE
    2. FREQUENCY(...,A:A) 计算每个ID在原数据中的出现频率
    3. IF(...,>0,1) 把频率大于0的ID标记为1(代表唯一存在)
    4. SUM(...) 求和得到唯一ID的总数

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.24 03:40:01