Excel 中的复杂查找

Complicated Lookup in Excel

我在工作表 1 的 Excel 中有一个表 1,其中显示了以逗号分隔的产品选项。

Model Options
G35UA A30E,F41A,F01B
G35UD A30E,F41A,F01B,PDIA
G35US A30E,F41A,K36B
G35UF A30E,XA43,L37A,J18G
G35UB A30E,F41A,F01B,FOOD,XA43,S10A

我在 sheet2 上有一个 table2 显示选项的定义。

Option Definition
A30E Backup Camera
F41A Fire Ext
F01B Drive Tires
PDIA Factory PDI
K21D Backup Alarm
E911 Cascade SS
K36B K Pad
D59B Full Dashboard
TR96 Tail
S10A Sun Roof

我想查看工作表 1 上的第三列,它根据选项查找定义。

Model Options Definition
G35UA A30E,F41A,F01B Backup Camera, Fire Ext, Drive Tires
G35UD A30E,F41A,F01B,PDIA Backup Camera, Fire Ext, Drive Tires, Factory PDI
G35US A30E,F41A,K36B Backup Camera, Fire Ext, K Pad
G35UF A30E,XA43,L37A,J18G Backup Camera
G35UB A30E,F41A,F01B,FOOD,XA43,S10A Backup Camera, Fire Ext, Drive Tires, Sun Roof

我没有成功使用 vlookup 函数,因为用逗号分隔的选项以及查找、搜索和索引和匹配函数都没有帮助,因为选项的数量是多种多样的。 感谢您的提前帮助。

假设您的选项总是四个字符长,因此您不必担心它们是另一个选项中的子字符串。这样你就不需要用逗号填充它们来进行精确匹配。所以使用 Microsoft365,试试:

C2中的公式:

=TEXTJOIN(", ",,FILTER(B:B,ISNUMBER(FIND(A:A,B2))))

在 Excel 2019 年,您将使用 CSE-entered 公式,例如:

=TEXTJOIN(", ",,IF(ISNUMBER(FIND(A:A,B2)),B:B,""))

在任何其他情况下,我建议您开始开发一个 UDF 来模仿 TEXTJOIN() 功能。