根据 3 个不同的条件返回一个值不起作用

根据 3 个不同的条件返回一个值不起作用

图像包括标准、源数据和所需的数据输出我正在制作一张表格,根据出发地邮政编码、目的地邮政编码和运输代码 (4,3,2,1) 返回“运输时间”。我尝试了几种index/match方法,还为每个组合设置了一个唯一值来尝试vlookup公式。我到处搜索,但找不到我的公式有什么问题。

我对索引/匹配公式的公式是

{=INDEX($H$3:$M$4517,MATCH(1,(H:H=O3)*(I:I=P3)*(K:K=Q3),0),6)}

我在 3 个不同的条件之间加了星号,但它们没有显示在类型中。数据包括出发地和目的地组合 84104 和 00544 的“运输时间”值,但在公式的结果中index/match,运输时间应按降序排列,即 5,3,2,1。但结果却是 2,1,0,0。我的公式或数据格式是否有问题?

答案1

对于我来说,用两个独立的表格找出正确的公式有点困难,所以目前,我只是假装你将两个表格合并在一起,并且合并后的数据在 HM 列中。

通用公式(见链接:https://exceljet.net/formula/index-and-match-with-multiple-criteria):

{=INDEX(range1,MATCH(1,(A1=range2)*(B1=range3)*(C1=range4),0))}

将公式放入 R3 中:

对于 INDEX 部分,您需要使用包含可能返回的值的范围,即 M 列。

=INDEX(M3:M4517,MATCH(.....

您想要将 O3、P3 和 Q3 中的值分别与 H3、I3 和 K3 匹配:

=INDEX(M3:M4517,MATCH(1,(O3=H3:H4517)*(P3=I3:I4517)*(Q3=K3:K4517),...

最后,在公式末尾添加 0 参数并以数组形式输入。

{=INDEX(M3:M4517,MATCH(1,(O3=H3:H4517)*(P3=I3:I4517)*(Q3=K3:K4517),0))}

尝试一下,然后告诉我它是否能正确匹配您的数据表;我不是数组公式方面的专家。如果能,我们可以接下来添加条件数据。

答案2

我已经成功地使用你的公式得到了想要的结果,几乎没有修改,解决了这个问题

在此处输入图片描述

  • 在单元格中输入此数组(CSE)公式Q2,最后输入Ctrl+Shift+Enter并填充。

    {=IFERROR(INDEX(G:L,MATCH(1,(G:G=N2)*(H:H=O2)*(J:J=P2),0),6),"")}
    

注意:

  • 相反,INDEX($H$3:$M$4517我已经使用了 INDEX(G:L并且其余部分是相似的。
  • 您也可以使用绝对引用。

根据需要调整公式中的单元格引用。

相关内容