首页 > 解决方案 > 建立两个日期之间不工作的员工报告的公式

问题描述

我试图找到一种方法来查看哪些员工在两个日期之间没有工作。

我应该使用 vlookup、索引和匹配、过滤器、查询还是其他方式?

表 1 - 所有员工和工作天数的数据库/日志。

# 一个 C D
1 ID 姓名 开始日期 结束日期
2 12345 约翰 2021 年 1 月 1 日 2021 年 1 月 8 日
3 54321 莎拉 2021 年 1 月 24 日 2021 年 1 月 29 日
4 00731 詹姆士 2021 年 2 月 5 日 2021 年 2 月 15 日
5 00731 约翰 2021 年 2 月 10 日 2021 年 2 月 30 日

表 2(第 1-2 行)- 手动输入两个日期。

# 一个
1 开始日期(手动输入) 结束日期(手动输入)
2 2021 年 1 月 1 日 2021 年 1 月 30 日

表 2(第 3 行+)- 在表 2 中输入的两个日期之间未工作的所有员工的列表!A2:B2(预期结果)

# 一个
3 ID 姓名
4 00731 詹姆士

标签: google-sheetsgoogle-sheets-formulaindex-match

解决方案


尝试:

=INDEX(SUBSTITUTE(UNIQUE(QUERY(""&SPLIT(FLATTEN(IF(SEQUENCE(1, MAX(D2:D-C2:C))<=D2:D-C2:C, 
 "♥&quot;&A2:A&"♦&quot;&B2:B&"♦&quot;&C2:C+SEQUENCE(1, MAX(D2:D-C2:C), 0), )), "♦&quot;), 
 "select Col1,Col2 where not Col3 matches '"&JOIN("|", "^$", 
 IF(SEQUENCE(1, G2-F2)<=G2-F2, F2+SEQUENCE(1, G2-F2, 0), ))&"'", 0)), "♥&quot;, ))

在此处输入图像描述

演示表


推荐阅读