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

Google Sheets:如何用ArrayFormula实现批量自动扩展的唯一值计数?

解决方案

你需要按A列每行的值分组,统计对应分组内符合格式要求的E&F唯一组合数,用单个公式覆盖B8:B1000。直接嵌套ArrayFormula无法实现分组统计,因为COUNTUNIQUE是聚合函数,会返回单个结果,需要用逐行遍历的函数来处理。

正确公式

=ARRAYFORMULA(IF(A8:A1000="", "", BYROW(A8:A1000, LAMBDA(currentA, COUNTUNIQUE(IF((A8:A1000=currentA)*(REGEXMATCH(E8:E1000, "\d{4}-\d{4}")), E8:E1000&" "&F8:F1000, ""))))))

公式说明

  1. 外层IF判断:检查A8:A1000对应行是否为空,为空则返回空值,避免公式填充到无数据的行。
  2. BYROW遍历:逐行读取A列的值,将当前行的A值传入currentA参数,实现按行分组的逻辑。
  3. 内部统计逻辑:和你原来的公式逻辑一致——筛选出A列等于currentA且E列符合\d{4}-\d{4}格式的行,拼接E和F列后统计唯一值数量。

之前尝试的问题分析

  • 第一个公式中A8:A=A8是固定引用A8单元格,所有行都用A8的值统计,结果全部相同。
  • 第二个公式中A8:A=A8:A永远为真,COUNTUNIQUE会统计整个区域内符合格式的所有唯一值,得到全局总数而非分组统计结果。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.12 14:53:35