MATCH抛出数据types错误

我有一个要求做基于2列数据的参考查找。 公式在“函数参数”对话框中显示正确的结果,但由于某种原因显示#VALUE! 在细胞中。 下面是正在发生的事情的简单示例,参考数据显示在第2到第5行。

在这里输入图像说明

C8D12中的索引和匹配公式是抛出值错误(基于MATCH ),但是如果打开函数参数对话框,则显示正在计算的正确答案。 每一行都使用相同的基本公式,它使用列A和B中的值来执行参考区域中匹配行的Usance Code查询。 单元格C8D8公式如下:

C8

 =INDEX($A$2:$C$5,MATCH(A8 & B8, $A$2:$A$5 & $B$2:$B$5, 0), 3) 

D8

 =MATCH(A8&B8,$A$2:$A$5&$B$2:$B$5,0) 

MATCH抛出错误“公式中使用的值是错误的数据types”,并显示#VALUE! 但是如果您将光标置于具有任一公式的单元格中,并select“插入函数”以打开“函数参数”对话框,那么该公式正在计算其INDEXMATCH公式的正确结果,如上所示。

如果有人可以解释数据types错误的根本原因,并提供解决scheme,将不胜感激。

这是因为你使用的公式是一个数组公式。 $A$2:$A$5 & $B$2:$B$5是一个数组,因为连接函数(这里以&的forms使用)不适用于数组,除非被函数显式调用。

正常的公式会因此得到错误#VALUE!

若要解决此问题,请在input公式之后按Ctrl + Shift + Enter ,而不是仅inputEnter 。 这应该解决这个问题。 当你这样做的时候,你还会注意到在公式中插入了大括号(从公式栏),这些表示数组公式。

另一种select是使用LOOKUP函数来获得所需的结果 – 不需要“数组input”,即C8中的这个公式被复制下来

=LOOKUP(2,1/(A$2:A$5=A8)/(B$2:B$5=B8),C$2:C$5)

请注意,如果A8和B8都匹配多个行,则会获得最后一个