在excel单元格中搜索字符串并在第二个单元格中显示另一个字符串的功能是什么,无论该字符串是否在第一个单元格中找到。
例如:
单元格 A1 包含文本:“这是一些示例文本”
我在另一张纸的一列中有一个预定义字符串列表,它们是:“文本,样本1,样本2,字符串”(全部在单独的单元格中)
然后单元格 A2 应显示: text - 因为单元格 A1 中存在单词 text,所以基本上只需要从一个单元格到另一个单元格匹配特定的单词。在现实生活中 A1 会有很多单词,但我只需要寻找一个。
如果您的 4 个文本字符串列表在 Sheet2!$D$1:$D$4 中,请在 A2 中尝试此公式
=LOOKUP(2^15,SEARCH(Sheet2!$D$1:$D$4,A1),Sheet2!$D$1:$D$4)
对于您将返回“文本”的示例。一般来说,它将返回该范围内的最后一个匹配词
.....您也可以稍微修改一下以仅匹配整个单词
=LOOKUP(2^15,SEARCH(" "&Sheet2!$D$1:$D$4&" "," "&A1&" "),Sheet2!$D$1:$D$4)
假设单词之间只有空格(没有标点符号)
假设您在 Sheet1 中输入的每个字符串都在检查它是否包含来自 Sheet2 中任何单元格的字符串。我格式化了我的代码,以便它可以在 B 列中显示包含的文本,我可以将公式向下拖动,它会检查 A 列中的所有字符串。您应该能够根据格式的需要轻松修改它。
=IF(ISNUMBER(SEARCH(Sheet2!$A$1,A1)),Sheet2!$A$1, IF(ISNUMBER(SEARCH(Sheet2!$A$2,A1)),Sheet2!$A$2))
IF
基本上,它是检查 Sheet2 上每个单元格的一长串嵌套s。在Search
括号内,它比较的是 Sheet2 中单元格 A1 中的值包含在单元格 A1 中。如果是,请使用此公式将 Sheet2 中的值放入单元格中。如果没有,则再次检查 Sheet2 单元格 A2。依此类推。
笔记:
该SEARCH()
函数不区分大小写。您可以将其替换FIND()
为区分大小写。
如果您的单元格包含类似“text123”的内容,这将(例如)返回“文本”,因为它包含字符串“文本”。
这只会返回它在 Sheet2 上遇到的第一个单词。如果您需要它在匹配时返回多个单词,请告诉我,我会找到修改它的方法。
如果您想在另一个字符串中查找一个字符串,您通常希望使用SEARCH()
(不区分大小写)或FIND()
(区分大小写)。
=FIND(A2,A1)
=SEARCH(A2,A1)
然后可以像这样检查:
=IF(ISERROR(FIND(A2,A1)),Text not found","Text Found")
如果您想在单个文本字段中查找一系列单元格,这会有点棘手,它可能需要一个数组公式,如果这是您想要的,请告诉我,我会看看是否可以解决。