0

我想设置一个包含我学校的出勤政策的公式:

  • 3 次迟到 = 1 次无故缺席
  • 6 次迟到 = 2 次无故缺勤
  • 等等

单元格必须不仅引用具有迟到计数的单元格,还必须引用同一工作簿中的考勤工作表,并且必须将两个值相加。例如考勤页面显示无故缺勤 1 次,迟到计数显示迟到 7 次,则公式需要返回 3。

这就是我所拥有的:

 =SUM(Attendance!O9+(IF(J4>=3,1,IF(J4>=6,2,IF(J4>=9,3,IF(J4>=12,4,))))))  

它适用于 4 次迟到和 1 次无故缺勤,但继续返回 2 次迟到 7 次和 1 次无故缺勤。

我错过了什么?

4

3 回答 3

4

比使用 If/Then 容易得多:

=Attendance!O9+(Int(J4/3))

Int函数返回计算的下限整数 J4/3。因此,如果 J4 = 7,则结果为 2。如果 J4=9,则结果为 3,以此类推。

于 2013-06-13T16:31:59.970 回答
2

您的 if 语句是向后的,在这种情况下,您应该首先检查更大的数字,否则第一个 if 始终为真。所以 7 在 >= 3 时为真,因此你得到 1 + 1 = 2

编辑 - 一个更好的方法是将你的 J4 除以 3 并返回没有余数的值

QUOTIENT(J4, 3)
于 2013-06-13T16:25:13.687 回答
1

公式的 if 部分应如下所示

IF(J4<3,0,(IF(J4<6,1,(IF(J4<9,2,IF(J4<12,3,4))))))

请记住,此公式将您的迟到限制为最多 4 次无故缺勤。

更好的解决方案是使用 QUOTIENT 公式

= Attendance!O9 + QUOTIENT(J4,3)  
于 2013-06-13T16:26:50.930 回答