如何从一个 excel 列中查找值并在 B 列中显示不同的值?

How to find values from one excel column and display a diff value in Col B?

   A                                        B (This is what I want)

Apple iPhone                                       Apple
Verizon Galaxy S6 (SM-G920F)                      Samsung
T-Mobile Galaxy S7 Edge (SM-G935F)                Samsung
Apple iPod Touch                                   Apple

即如果 A 列包含单词 "Galaxy",则在 B 列显示 Samsung;如果 A 列包含单词 "Apple".

,则显示 "Apple"

我想使用 excel 公式而不是 VBA。有人可以帮忙吗?

创建 table 要搜索的关键字和预期结果:

然后使用这个公式:

=INDEX(E:E,AGGREGATE(15,6,ROW($D:$D)/(ISNUMBER(SEARCH($D:$D,A2))),1))

如果您不想要额外的 table 但想对数组进行硬编码,您可以这样做:

=INDEX({"Apple","Samsung"},AGGREGATE(15,6,ROW(:)/(ISNUMBER(SEARCH({"Apple";"Galaxy"},A2))),1))

您可以使用这样的公式:

=IF(ISNUMBER(SEARCH("Apple";A1));A1;"")

这是您可以在 B 列中使用的公式:

=IF(IFERROR(FIND("Apple",A1) > 0,FALSE), "Apple", IF(IFERROR(FIND("Galaxy",A1)>0,FALSE),"Samsung",""))

这里是示例数据和结果:

如果在 A 列的相应单元格中找不到 "Apple" 或 "Galaxy",此公式会将值留空。

请尝试以下操作:

=IFERROR(IF(SEARCH("Apple",A1)>0,"Apple"),"Samsung")