从下拉列表中选择多个项目(不重复)并通过查找总结它们的值

从下拉列表中选择多个项目(不重复)并通过查找总结它们的值

在工作表中Input Variable,我有一个手机F3包含从下拉菜单中选择多个项目(不重复)并以逗号分隔。

落下

他们的查找值在另一张表中Ref Data如下所示:

参考数据

我想在单元格中获取它们的总数G3

=VLOOKUP(F3,'Ref Data'!B:C,2,FALSE)

到目前为止,我只获得了一件商品的价值。

例如:

一个项目

但是当我从下拉菜单中选择另一个项目时,我得到了#N/A价值

例如:

对于物品Delivery, Pilot,价值应该是1500 (1000 + 500)

多项

我该如何解决这个问题?

答案1

您可以使用以下公式:

=SUMPRODUCT(--(ISNUMBER(FIND(B2:B5,F3))),C2:C5)

关于它的工作原理,我可以找到比我能想到的更好的解释这里

答案2

如果列表包含完全嵌入其他元素的元素,例如“All Extras”中包含“All”,“copilot”完全嵌入“pilot”(出于说明目的,全部小写,因为FIND区分大小写,所以“Pilot”不在“Copilot”中),请使用此附加括号,这样就不会出现错误的收费。

=SUMPRODUCT(--(ISNUMBER(FIND(", "&B2:B5&",",", "&(F3)&","))),C2:C5)

将逗号添加到选择项“Delivery, Pilot”中,使其成为“,Delivery, Pilot,”。将逗号添加到数组 B2:B5 中,变为 {", Pilot,";", Delivery,"...}。对于这些数组项(及其逗号),当元素在选择项中且未在选择项中找到完整数组元素时,Find返回结果。如果服务描述中有逗号,则在选择框值中使用不同的分隔符(例如 pipe ),并使用相同的分隔符在此公式中括起来。双重否定将结果布尔数组变为 1(true=找到)和 0(false=未找到)。将结果数组 1 和 0 乘以相应 Cost 数组 C2:C5 的行值,然后将所有这些乘积相加。TRUEFALSE|--FINDSUMPRODUCT

相关内容