Google Sheets多条件QUERY+SUM组合统计公式编写方法
Google Sheets QUERY+SUM多条件计数公式方案
以下是可直接套用的公式写法,适配你提出的两项筛选规则:
- A列匹配指定固定值/特定单元格取值
- E列匹配最多4种指定状态的任意一种
方案1:QUERY原生聚合写法(性能最优,无需额外嵌套SUM)
QUERY自带COUNT聚合函数,统计效率比嵌套SUM更高,返回结果直接是符合条件的条目总数。
公式模板(A列匹配固定值)
把示例里的华东区域替换成你要匹配的A列固定值,把待审核|已通过|已驳回|待补件里的4个状态替换成你实际需要的E列状态,竖线代表“或”逻辑,不足4个状态直接删掉多余项即可:
=QUERY(A:E, "SELECT COUNT(A) WHERE A = '华东区域' AND E MATCHES '待审核|已通过|已驳回|待补件' LABEL COUNT(A) ''", 0)
公式模板(A列匹配特定单元格)
如果要引用单元格取值(比如引用F1单元格的值作为A列匹配条件),用字符串拼接写法即可:
=QUERY(A:E, "SELECT COUNT(A) WHERE A = '"&F1&"' AND E MATCHES '待审核|已通过|已驳回|待补件' LABEL COUNT(A) ''", 0)
公式末尾的
LABEL COUNT(A) ''作用是去掉QUERY自动生成的统计列标题,直接返回纯数字结果;最后一个参数0代表统计范围没有表头行,如果你的数据第一行是表头,把这个参数改成1即可。
方案2:QUERY+SUM嵌套写法(适配需要扩展求和逻辑的场景)
如果你明确需要结合SUM功能,可以先用QUERY筛选符合条件的行并标记为1,再用SUM求和得到总条目数。
公式模板(A列匹配固定值)
=SUM(QUERY(A:E, "SELECT 1 WHERE A = '华东区域' AND E MATCHES '待审核|已通过|已驳回|待补件' ", 0))
公式模板(A列匹配特定单元格)
=SUM(QUERY(A:E, "SELECT 1 WHERE A = '"&F1&"' AND E MATCHES '待审核|已通过|已驳回|待补件' ", 0))
特殊场景适配
- 如果A列的匹配值是数字类型(比如数字订单号、数值类区域编码),不需要给匹配值加单引号:匹配固定数字1001就写
A = 1001,匹配数字格式的F1单元格就写A = "&F1&" - 如果E列的状态值本身包含竖线
|字符,不要用MATCHES正则匹配,换成IN列表写法即可:
=QUERY(A:E, "SELECT COUNT(A) WHERE A = '"&F1&"' AND E IN ('待审核','已通过','已驳回','待补件') LABEL COUNT(A) ''",0)
内容的提问来源于stack exchange,提问作者Mimi
相关产品推荐
相关产品推荐

