基于独特规则的高级查找公式

时间:2018-07-12 18:43:30

标签: excel excel-formula

我正在为工作创建一个出勤跟踪表,需要一个对Excel有更高级知识的人。这是为了跟踪员工的迟到和计划外缺勤(UPT)。当员工获得太多迟到或UPT时,它称为“出现”,当出现次数增加时,它将增加“操作级别”。我每两周输入一次新数据,然后发送电子邮件以通知员工和他们的经理由于这些出勤问题而增加的操作级别。我希望此电子表格为我做一些工作,因为我正在与数百名员工一起工作,因此该过程有时可能需要几天才能完成。

我的目标是在“出勤详细信息”页面中使用正确的详细信息填充“员工”概述单元格。具有挑战性的部分是,有三个规则规定了我填写“员工概览”所需要的日期。

规则1:发生四个拖延(TAR)。

规则2:一个UPT发生了一次,但是只要有多个UPT发生一次,只要它们彼此之间相隔5天之内即可。

规则3:迟到和UPT在365天后消失。

出现次数的增加将增加操作级别(请参阅“员工概述”屏幕快照中的表)。

在我的示例屏幕快照中,详细信息应生成我为鲍勃·史密斯制作的硬编码员工概述。我并不期望任何人都能得到所有答案,但是请通过提示可用来实现我所需要的技巧或工具来帮助我。如果您想提供帮助但不了解我的要求,请提出任何澄清的问题。

Screenshot of Attendance Details

Screenshot of Employee Overview for Bob Smith (Hardcoded)

1 个答案:

答案 0 :(得分:0)

我建议:

  1. 打破任务/评估
  2. 每个规则可能会生成一组新的单元格/数据/表。因此,首先要使用1条规则。
  3. 重复另一个规则。
  4. 巩固。

这些只是我的脑袋在大声思考...希望无论如何都会有帮助..(在乎发表评论吗?:)

规则1:=if(countif(<TarRange>,"TAR")>=4,1,0)=countif(<TarRange>,"TAR")/4

规则2:列出“ UPT”及其日期的新列表,然后从此处开始。按日期排列数据,然后使用=if((day(<NextEntryDate>-day(<previousEntryDate>))<=5,<currentEntrydate>,"")

规则3:可以使用year(),month()和day()提取每个日期单元格的值。也可以在excel帮助中查看天数计算。我看到您将需要一个额外的列(在“规则2”列表旁边)来进行移动求和。移动求和的一个示例是在post内的H&I列中:


它使用if(<Day1>=<Day2>,<Count>,<DontCount>)语法。您可以将其更改为year1 / year2。

恕我直言。如果您遇到困难/成功,请与我们分享。 (: