如何从索引匹配中添加一些结果

时间:2017-09-28 11:25:54

标签: excel excel-vba excel-formula vba

如何添加一些索引匹配结果请求?是否有更快的方法来添加所有而不是逐个添加每个索引匹配?

enter image description here

2 个答案:

答案 0 :(得分:1)

这可能是一种相当普遍的做法(在这种特殊情况下不会太短 - 但你可以填写最多三个部门和最多四个商店)

=SUMPRODUCT(ISNUMBER(MATCH($A$2:$A$4,{"Depart Central","",""},0))*ISNUMBER(MATCH($B$1:$E$1,{"Shop1","Shop2","Shop3",""},0))*$B$2:$E$4)

enter image description here

答案 1 :(得分:0)

见下面附图。您可以使用SUMPRODUCT并像这样添加标准:

=SUMPRODUCT(--($A$1:$A$4=A4)*(($B$1:$E$1=B1)+($B$1:$E$1=C1)+($B$1:$E$1=D1))*($B$4:$E$4))

请注意,公式中的A4, B1, C1 and D1可以更改为您要使用的条件。

这应该对你有用,但试着告诉我。

<强>修订版

这就是我想要的标准表。

因此,在cell C8中输入此公式后,您应该得到结果。

=SUMPRODUCT(--($A$1:$A$4=A8)*(($B$1:$E$1=B8)+($B$1:$E$1=B9)+($B$1:$E$1=B10))*(OFFSET(A1,MATCH(A8,$A$1:$A$4,0)-1,1,,COUNTA(B1:L1))))

我刚刚将$B$4:$E$4替换为OFFSET(A1,MATCH(A8,$A$1:$A$4,0)-1,1,,COUNTA(B1:L1)),因此可以根据第一个条件找到范围。但我现在还不知道如何动态检查标准2。考虑使用OFFSET但它只适用于连续范围。遗憾。