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

如何在Google Sheets中用REGEXMATCH+COUNTIF统计整列考勤匹配次数?

Google表格缺席&迟到计数器实现方案

1. 生成唯一姓名列表

首先从缺席(C列)和迟到(D列)数据中提取所有不重复的姓名,在F2单元格输入以下公式:

=UNIQUE(FLATTEN(SPLIT(TEXTJOIN(", ", TRUE, C:C, D:D), ", ")))

公式逻辑:合并C、D列所有文本内容→按「逗号+空格」拆分姓名→展平成单列→提取唯一值,自动生成完整的统计名单。

2. 统计缺席次数

在G2单元格输入公式,然后下拉填充至所有姓名行:

=SUMPRODUCT(--REGEXMATCH(C:C, "\b"&F2&"\b"))
  • \b是单词边界匹配,确保只统计完整姓名,避免部分匹配的错误(比如不会把"SMITH"误匹配到"SMITH JOHN")
  • --将REGEXMATCH返回的布尔值(TRUE/FALSE)转换为数字1/0
  • SUMPRODUCT对整列的匹配结果求和,得到该姓名的缺席总次数

3. 统计迟到次数

在H2单元格输入公式,同样下拉填充:

=SUMPRODUCT(--REGEXMATCH(D:D, "\b"&F2&"\b"))

逻辑和缺席统计一致,仅将目标列替换为迟到数据所在的D列。

进阶:一键生成完整统计表格

如果想避免手动下拉填充,可使用数组公式一次性生成所有结果。在F1:H1输入表头后,在F2单元格输入:

=LET(
  names, UNIQUE(FLATTEN(SPLIT(TEXTJOIN(", ", TRUE, C:C, D:D), ", "))),
  absent_counts, BYROW(names, LAMBDA(x, SUMPRODUCT(--REGEXMATCH(C:C, "\b"&x&"\b")))),
  late_counts, BYROW(names, LAMBDA(x, SUMPRODUCT(--REGEXMATCH(D:D, "\b"&x&"\b")))),
  HSTACK(names, absent_counts, late_counts)
)

公式会自动生成姓名列、缺席次数列、迟到次数列,无需后续操作。

内容的提问来源于stack exchange,提问作者RAPHAELLE ABBY MONTAYRE

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.18 14:12:45