当匹配时,Excel MATCH 函数返回 #N/A

当匹配时,Excel MATCH 函数返回 #N/A

在 Excel 电子表格中,我有一行包含一年中的所有日期,以及英国银行假日列表。我希望使用条件格式突出显示银行假日的日期。

当使用简单比较测试日期是否匹配时=CX$3=$A$49,Excel 返回TRUE

但是,当我使用时=MATCH(CX$3, $A$48:$A$56, 0),Excel 返回#N/A错误。我的计划是在条件格式中使用MATCH如下内容,并将条件应用于日期行 ($E$3:$NF$3) 上的所有日期 -

=NOT(ISERROR(MATCH(E$3, $A$48:$A$56, 0)))

我曾尝试解决问题-

  • 两个单元格的格式相同(日期),且语言环境相同(英语(英国))。
  • 没有虚假的空格(通过返回的简单比较证明True)。
  • 我在输入公式后按下了ctrl, shift+ enter(尽管我从来不需要在我使用过的任何其他功能中执行此操作)INDEXMATCH

还有哪些问题可能会导致该MATCH功能失败?

答案1

TLDR:尝试使用=ISNUMBER(MATCH(E3, $A$48:$A$56, 0))

你可以尝试这种方法:

选择您想要设置条件格式的列/行。

在我的示例中,我在 A 列中保存了从 2023 年 1 月 1 日到 2023 年 12 月 31 日的所有日期(A1:A365),并选择了随机日期来表示 B 列(B1:B6)中的“假期”。

选择 A 列(日期):

主页 > 条件格式 > 新规则 > 使用公式确定要格式化的单元格

公式:=ISNUMBER(MATCH(A1,B$1:B$6,0))

即使您的日期连续,这也应该有效,如下例所示:=ISNUMBER(MATCH(A2,$A$1:$NA$1,0))

在我的行示例中,日期是 A1:NA:1,假期是 A2:D2。

在底部设置格式。

当 A 列(日期)中的任何日期与 B 列(假期)中的日期匹配时,它将根据您指定的条件格式化该单元格。

这将适用于 A 列中的每个单元格(例如:A1、A2、A3……A365)。

您可以通过选择“条件格式”>“管理规则”>“此工作表”>“适用于”来检查

“适用于”部分应该是您运行公式的范围(例如=$A$1:$A$365:)

相关内容