检查文本列 A 中的字符串,return 列 B 中的另一个字符串 - Excel
Check for string in text column A, return another string in column B - Excel
我正在尝试查找 A 列中的 3 个字符串(蓝色、红色、绿色)之一。在 A 列中我有:
row1: "Robert has Blue shorts"
row2: "Maria has a Red dress"
row3: "John has a Green car"
每当我在 A 列中找到这 3 个词之一时,我想用找到的实例(绿色、红色、蓝色)填充 B 列。
A 列中总是有这 3 个词之一,永远不会超过一个,并且词的位置可以在字符串中的任何位置。
我知道如何将其放入 Python 或 SQL,但我在 Excel 中苦苦挣扎。
谁能分享一下以前用过的解决方案?
您可以使用这个数组公式:
=INDEX({"Red","Blue","Green"},MATCH(TRUE,ISNUMBER(SEARCH({" Red "," Blue "," Green "}," " & A1 & " ")),0))
作为数组公式,退出编辑模式时必须用Ctrl-Shift-Enter确认。如果正确完成,那么 Excel 将在公式周围放置 {}
。
注意事项:
您还可以将 {"Red","Blue","Green"}
替换为范围参考。因此,如果这三个词在 D1:D3 中,则公式为:
=INDEX($D:$D,MATCH(TRUE,ISNUMBER(SEARCH(" " & $D:$D & " "," " & A1 & " ")),0))
我正在尝试查找 A 列中的 3 个字符串(蓝色、红色、绿色)之一。在 A 列中我有:
row1: "Robert has Blue shorts"
row2: "Maria has a Red dress"
row3: "John has a Green car"
每当我在 A 列中找到这 3 个词之一时,我想用找到的实例(绿色、红色、蓝色)填充 B 列。
A 列中总是有这 3 个词之一,永远不会超过一个,并且词的位置可以在字符串中的任何位置。
我知道如何将其放入 Python 或 SQL,但我在 Excel 中苦苦挣扎。
谁能分享一下以前用过的解决方案?
您可以使用这个数组公式:
=INDEX({"Red","Blue","Green"},MATCH(TRUE,ISNUMBER(SEARCH({" Red "," Blue "," Green "}," " & A1 & " ")),0))
作为数组公式,退出编辑模式时必须用Ctrl-Shift-Enter确认。如果正确完成,那么 Excel 将在公式周围放置 {}
。
注意事项:
您还可以将 {"Red","Blue","Green"}
替换为范围参考。因此,如果这三个词在 D1:D3 中,则公式为:
=INDEX($D:$D,MATCH(TRUE,ISNUMBER(SEARCH(" " & $D:$D & " "," " & A1 & " ")),0))