Google Sheets考勤数据筛选:生成员工加班日期与时长结果
Google Sheets 筛选员工加班日期与时长方案
针对你的考勤表结构(Attendance工作表中A=日期、B=姓名、C=OT Hours),以下是两种可行的实现方案,假设你用Sheet1!A1作为员工姓名的搜索单元格:
方法一:使用FILTER函数
在目标输出区域的首单元格输入以下公式,会自动输出匹配员工的加班日期和对应OT时长:
=FILTER({Attendance!A:A, Attendance!C:C}, Attendance!B:B=Sheet1!A1, Attendance!C:C>0)
- 逻辑说明:
{Attendance!A:A, Attendance!C:C}:指定只提取日期和OT时长两列Attendance!B:B=Sheet1!A1:匹配搜索单元格中的员工姓名Attendance!C:C>0:仅保留有实际加班时长的记录
方法二:使用QUERY函数
如果需要保留表头输出,用QUERY函数更灵活:
=QUERY(Attendance!A:C, "SELECT A,C WHERE B='"&Sheet1!A1&"' AND C>0", 1)
- 逻辑说明:
"SELECT A,C":明确指定要输出的日期(A列)和OT时长(C列)"WHERE B='"&Sheet1!A1&"' AND C>0":设置过滤条件——匹配员工姓名,且OT时长大于0- 最后的
1表示数据源第一行是表头,会自动保留表头
注意事项
- 确保搜索单元格的姓名和
Attendance表中姓名的格式完全一致(大小写、空格都要匹配),否则会出现匹配失败 - 若搜索单元格是员工ID等数字类型,去掉公式里的单引号,改为:
"WHERE B="&Sheet1!A1&" AND C>0" - 公式会实时响应搜索单元格的内容变化,无需手动刷新
内容的提问来源于stack exchange,提问作者Chester Caguicla
相关产品推荐
相关产品推荐

