我们用Excel进行数据分析时通常涉及到处理日期,比如需要检查某个日期是否在两个给定日期之间。在本教程中,我将向您展示如何检查日期是否在两个给定的日期之间。
使用嵌套 IF 公式
检查一个日期是否在两个给定日期之间的最简单方法之一是使用一个简单的 if 公式。因为我们需要检查两个条件,我们需要使用两个 if 公式。
下面我有一个数据集,其中我有项目开始日期和项目结束日期分别在 A 栏和 B 栏。然后在 C 栏中有项目提交日期。

现在我想检查项目提交日期是否在项目开始和项目结束之间,使用下面嵌套的 IF 公式可以很容易地做到这一点:
=IF(C2>=A2,IF(C2<=B2,"In Range","Out of Range"),"Out of Range")
如果日期在给定的两个日期之间,上面的公式将返回“ In Range”,如果日期在项目开始之前或项目结束之后,则返回“ Out of Range”。
现在让我快速解释一下这个公式是如何工作的。我首先使用了 and if 公式来检查日期是否在项目开始日期之后。基于这些准则,我需要指定在条件为真的情况下公式应该做什么,以及在条件不为真的情况下公式应该做什么。但是因为我有两个条件要检查,所以在检查完第一个条件之后,我立即使用第二个 IF 函数来检查另一个条件(即日期是否在项目结束日期之前)。由于 IF 函数接受3个参数(条件、条件为 True 时的值和条件中的值为 False) ,对于第二个 IF 函数,我将“ In Range”指定为第二个参数,因为它满足了这两个条件,并将 out of Range 指定为第三个参数,因为它满足第一个 IF 条件,但是它失败了第二个 IF 条件。最后,我指定“ Out of Range”作为第一个 IF 函数的第二个参数(这意味着第一个 IF 函数中的条件失败,因此它没有转到第二个 IF 函数,而是返回第一个 IF 函数的第二个参数)。因为只有两个条件需要检查,所以我使用了两个 if 函数,其中第二个函数嵌套在第一个函数中。

使用 IF + AND 公式
虽然许多 Excel 用户对使用 IF 公式相当满意,但当您需要检查多个条件时,我更喜欢使用 IF 和 AND 公式的组合。
在 AND 公式中,您可以检查多个条件,并且可以指定在所有条件都为真的情况下应该得到什么结果,以及在这些条件中的任何一个为假的情况下应该得到什么结果。
让我们再次在 A 列和 B 列中获取项目开始和项目结束日期所在的相同数据集,并且在 C 列中获取项目提交日期。
下面是我可以用来检查提交日期是否在项目开始日期和项目结束日期之间的公式:
=IF(AND(C2>=A2,C2<=B2),"In Range","Out of Range")
上面的公式检查两个条件,如果提交日期在开始和结束日期之间,它将返回“ In Range”,如果提交日期在项目开始之前或项目结束日期之后,它将返回“ Out of Range”。
注意,我在上面的公式中仍然使用了 IF 函数,但是,我不需要使用两个 IF 函数。
因为我必须检查这两个条件,所以我使用 AND 函数来代替。
如果两个条件都为真,AND 函数将返回 TRUE; 如果两个条件都为假,则 AND 函数将返回 FALSE。
因为我需要一个更具描述性的输出,而不是简单的 TRUE 或 FALSE,所以我使用了一个 IF 函数,如果结果为 TRUE,它会给出“ In Range”,如果结果为 FALSE,它会给出“ Out of Range”。

检查日期是否发生在周末
在项目管理中处理日期时的一个常见用例是确定日期是否发生在周末。如果你手动检查这个,你会检查一个日期是星期六还是星期天。但是当在 Excel 中处理日期时,您可以使用 WEEKDAY 函数轻松地完成这项工作。下面我有一个数据集,其中 A 列中有一些日期,我想检查这些日期是否发生在周末。
下面的公式可以帮助你做到这一点:
=WEEKDAY(A2,2)>5

如果日期发生在星期六或星期天,它会给你一个真,否则它会给一个假。
上面的 WEEKDAY 公式检查日期的序列号,并返回与该日期的工作日号码相对应的数字。如果是星期一,返回值为1如果是星期二,返回值为2以此类推。
因为我要检查的条件是工作日结果是否大于5,所以如果日期是在周末,那么它将返回 TRUE,如果是在工作日,那么它将返回 FALSE。
如果你想让结果更有意义,你可以使用下面的 If 公式,如果日期发生在工作日,它会返回“ Weekday”,如果日期发生在周末,它会返回“ Weekend”。