索引,匹配 IF

索引,匹配 IF

我正在尝试使用包含表达式的INDEXwith 。以前在 Excel 2010 中可以使用,但在 2016 中不再有效。  您知道是什么引发了 N/A 错误吗?MATCHIF

=INDEX(Staff[Lookup Office],MATCH(B49,Staff[Position Number],0))

我命名了一个新表,列已从旧公式更新,但即使只是交换这些列也会导致错误。上面的结果有效N/A,但当职位编号匹配时,我需要查找办公室。将有 3 个以上的结果具有匹配的职位编号,但只有 1 个在“现任者”列中为“是”。ANDStaff[Incumbent]="Yes"Staff[Position Number]

2010 年公式:

=INDEX(Table_owssvr[Full Name],MATCH("Yes",IF(Table_owssvr[Position Number]=C59,Table_owssvr[Incumbent]),0))

答案1

你的问题是,为什么该公式不起作用?

这就是为什么它不起作用

=INDEX(Table_owssvr[Full Name],MATCH("Yes",IF(Table_owssvr[Position Number]=C59,Table_owssvr[Incumbent]),0))

匹配

MATCH最多需要三个参数。对于lookup_value,您得到“是”。好的。

对于lookup_array缺少更好的术语来表示查找值的“查找位置”,您有一个IF语句。您没有给IF表达式一个value_if_false参数,这对于语句来说很好IF。但是当该语句(即 - 不IF(Table_owssvr[Position Number]=C59为真)时,该表达式的计算结果为逻辑值FALSE。此时,您的MATCH函数如下所示:

MATCH("Yes",FALSE,0)

换句话说,您正在寻找 FALSE 中的字符串“Yes”。

该表达式的结果是什么?#N/A

推荐进一步阅读

显示计算步骤

相关内容