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

Office 365 Excel公式实现:按ID区块去重统计非空单元格

用Excel Office 365公式实现连续ID区块的非空/X单次计数统计

针对你描述的需求(连续ID区块内只要有非空或"X"就计1次,最终统计符合条件的区块总数),可以用Office 365的动态数组函数实现,无需VBA:

核心公式(统计非空单元格)

假设ID列是A列(表头A1,数据从A2开始),data列是B列,公式如下:

=SUM(--BYROW(UNIQUE(A2:A100, TRUE), LAMBDA(x, COUNTIFS(A:A, x, B:B, "<>")>0)))

公式解释

  1. UNIQUE(A2:A100, TRUE):提取连续重复ID的唯一值,每个连续区块对应一个唯一ID(比如12,12,2,2会提取出12和2)
  2. BYROW(..., LAMBDA(x, ...)):遍历每个提取出的ID,对每个ID x,用COUNTIFS统计该ID对应的B列非空单元格数量,判断是否大于0(即该区块至少有一个非空值)
  3. --:将逻辑值TRUE/FALSE转换为数值1/0
  4. SUM:将所有符合条件的区块计数(1)相加,得到最终结果

统计"X"的变体公式

如果只需要统计data列中包含"X"的区块,把COUNTIFS里的B:B, "<>"替换为B:B, "X"即可:

=SUM(--BYROW(UNIQUE(A2:A100, TRUE), LAMBDA(x, COUNTIFS(A:A, x, B:B, "X")>0)))

示例验证

  • 原数据:ID1区块有1个X,ID2区块无X,ID3区块有1个X → 公式结果为2
  • ID2区块新增1个X → 公式结果为3
  • 所有区块都设为X → 公式结果仍为3(每个区块只计1次)

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.29 18:45:21