Excel:在一定范围内查找值

Excel:在一定范围内查找值

在我的 Excel 文档中,有一张包含重要日期列的工作表。另一张工作表中列出了所有日期。我想有条件地格式化该列表,以便如果日期出现在重要日期列中,则突出显示该日期。

我应该使用什么函数来确定某个值是否存在于某个值范围内?LOOKUP、VLOOKUP 和 HLOOKUP 函数似乎不能满足我的要求。

答案1

将以下条件格式规则公式应用于所有日期列表:

=VLOOKUP(D1,A$1:A$5,1,FALSE)

其中“D1”是所有日期范围内第一个单元格的单元格引用,“A$1:A$5”是重要日期范围(请务必添加工作簿和工作表引用),

当然,这假设垂直列表。

答案2

也许你的问题不在于查找,而在于条件格式

使用条件格式时要记住的一件重要事情是,条件是按照出现的顺序进行评估的。一旦满足了某个条件,就会应用格式,而不会测试其他条件。因此,以正确的顺序设置测试非常重要。如果在上面的例子中,条件是以相反的顺序输入的,即测试 14 天,然后是 7 天,然后是 0 天,那么即使输入的日期是今天,它也只会应用 14 天的格式。换句话说,如果日期是今天,那么所有三个测试都会得到满足,因此您必须小心顺序才能获得所需的结果


作为 LOOKUP 的替代方案,您是否在寻找类似的东西?

日期间隔

本页介绍了几种处理日期间隔的方法。
具体来说,它解决了以下问题:日期是否在间隔内、两个间隔重叠的天数,以及一个间隔有多少天(不包括另一个间隔中的天数)。这些公式对于调度应用程序(例如员工休假计划)非常有用。

日期是否在区间内?

假设我们有 3 个日期——开始日期、结束日期和测试日期。
我们可以测试测试日期是否在开始日期和结束日期之间的间隔内。在此公式中,我们将使用三个命名单元格:TDate1 表示开始日期,TDate2 表示结束日期,TDate 表示测试日期。此公式将返回 TRUE 或 FALSE,表示 TDate 是否在间隔内。

=AND((TDate>=MIN(TDate1,TDate2)),TDate<=MAX(TDate1,TDate2))

例如,如果 TDate1 是 1 月 1 日 , TDate2 是 1 月 31 日 ,且 TDate 是 1 月 15 日 ,则公式将返回 TRUE,表示 TDate 落在区间内。

在这个公式中,TDate1 早于还是晚于 TDate2 并不重要。

注意:该页面包含有关如何操作的更多信息,但我感觉您想要一些更具活力的东西。

答案3

很抱歉用图片作为答案,但对我来说这样更快:

在此处输入图片描述

在此处输入图片描述

答案4

有很好的免费日历模板可从以下网址获取大卫·西亚的网站
它有 ZIP 包,其中包含使用您想要的条件格式的 XLS 模板。

您甚至可以考虑直接使用模板...

格式化示例,

=IF(ISNA(VLOOKUP(D12,HolidayTable,2,FALSE)),FALSE,TRUE)

D12是格式化工作表上的单元格位置。
ISNA检查是否VLOOKUP无法找到日期。
如果确认匹配(使用双重否定检查),则应用格式化。

重要的日子这显然是假期!:-)

相关内容