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

如何让Google Sheets考勤追踪器仅统计当日及过往出勤数据

解决Google Sheets考勤统计仅包含当日及过往数据的问题

要过滤掉未来日期的出勤记录,核心是用COUNTIFS函数结合TODAY(),同时匹配员工ID、日期≤今日、目标出勤状态三个条件。

单月份统计示例

假设你要在「Report 2022」中统计员工15在November工作表里的有效Present天数:

=COUNTIFS('November'!C:C, "员工15", 'November'!A:A, "<="&TODAY(), 'November'!B:B, "Present")

参数说明:

  • 'November'!C:C:指定员工ID所在列,匹配目标员工
  • 'November'!A:A, "<="&TODAY():筛选日期列中不晚于今日的记录(&用于拼接文本和函数结果)
  • 'November'!B:B, "Present":匹配要统计的出勤状态

同理,统计该员工有效AR天数的公式:

=COUNTIFS('November'!C:C, "员工15", 'November'!A:A, "<="&TODAY(), 'November'!B:B, "AR")

跨多月份统计(2022全年)

如果要整合所有2022月份工作表的数据,用QUERY函数更高效,无需逐个月份写COUNTIFS:

=QUERY({January!A:C;February!A:C;March!A:C;April!A:C;May!A:C;June!A:C;July!A:C;August!A:C;September!A:C;October!A:C;November!A:C}, "SELECT Col3, COUNT(Col2) WHERE Col1 <= date '"&TEXT(TODAY(), "yyyy-MM-dd")&"' AND Col2 = 'AR' GROUP BY Col3 LABEL Col3 '员工ID', COUNT(Col2) 'AR天数'", 1)

说明:

  1. {Sheet1!A:C;Sheet2!A:C}:用分号合并所有月份的A:C列数据(确保各表列顺序一致:日期、状态、员工ID)
  2. Col1 <= date '"&TEXT(TODAY(), "yyyy-MM-dd")&"':将今日日期转为QUERY识别的格式,筛选过往日期
  3. GROUP BY Col3:按员工ID分组统计
  4. 最后一个参数1表示数据包含表头

注意事项

  • 确保所有月份工作表的日期列是有效日期格式(而非文本),否则日期对比会失效
  • 如果员工ID是数字格式,公式里不要加引号,比如"员工15"改为15

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.13 21:05:25