使用从INDEX-MATCH返回的数组作为键的多级反向查找

在我的用例中,当我使用INDEX-MATCH时得到一个数组。 该数组对应于另一张表中的某些键,其中A列是键,下一列B是值。如何使用返回的键数组在另一张表中查找它们,获取相应的值,然后对这些值求和?

要使其更具体:

我有三张床单,重量,袋子和总数。

weights在A列中有项目,在B列中有它们相应的权重。

使用从INDEX-MATCH返回的数组作为键的多级反向查找

bags的每一行都以A列作为包名称,所有其他列作为每个包中的项目。这些项目来自weghts!A1:A

使用从INDEX-MATCH返回的数组作为键的多级反向查找

totals的A列是bags表中袋子的名称。第二列应该是该袋子中所有物品的总重量。

使用从INDEX-MATCH返回的数组作为键的多级反向查找

可以使用公式在bags工作表中找到项目本身

INDEX(bags!B:Z,MATCH(A1,bags!A1:A))

如何使用此结果数组在weights中找到它们的权重并进行汇总?我不想修改工作表的结构。

hhhhttty 回答:使用从INDEX-MATCH返回的数组作为键的多级反向查找

尝试:

=ARRAYFORMULA(IFNA(VLOOKUP(K1:K,IF(D1:D<>"",{D1:D,MMULT(IFERROR(REGEXREPLACE(E1:I,TEXTJOIN("|",1,A1:A),VLOOKUP(REGEXEXTRACT(E1:I,A1:A)),A1:B,2*SIGN(ROW(A1:A)),0)&""),E1:I)*1,TRANSPOSE(COLUMN(E1:I))^0)},),2,0)))

0

本文链接:https://www.f2er.com/3147096.html

大家都在问