Excelsearchstring
在excel单元格中searchstring的function是什么,在第二个单元格中是否显示另一个string,无论该string是否在第一个单元格中find。
例如:
单元格A1包含文本:“这是一些示例文本”
我在另一个工作表的列中有一个预定义的string列表,它们是:“text,sample1,sample2,string”(全部在单独的单元格中)
单元格A2然后应该显示:text – 因为单词文本存在于单元格A1中,所以基本上只需要匹配从一个单元格到另一个单元格的特定单词。 在现实生活中,A1会有很多词,但是我需要寻找一个词。
如果4个文本string的列表在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中input的每个string都将检查它是否包含来自Sheet2中任何单元格的string。 我对代码进行了格式化,以便在B列中显示所包含的文本,并且可以将公式向下拖动,并检查A列中的所有string。 您应该可以根据需要轻松修改您的格式。
=IF(ISNUMBER(SEARCH(Sheet2!$A$1,A1)),Sheet2!$A$1, IF(ISNUMBER(SEARCH(Sheet2!$A$2,A1)),Sheet2!$A$2))
基本上,这是嵌套IF
的长列表,用于检查Sheet2上的每个单元格。 在您的Search
括号内,它将比较来自Sheet 2中的单元格A1的值包含在单元格A1中。 如果是,将Sheet2中的值放入单元格中。 如果不是,则在Sheet2单元格A2中执行另一个检查。 依此类推。
笔记:
SEARCH()
函数不区分大小写。 您可以将其replace为FIND()
以区分大小写。
这将(例如)返回“文本”,如果你的单元格包含像“text123”,因为它包含string“文本”。
这只会返回它在Sheet2上运行的第一个单词。 如果你需要它匹配多个单词,让我知道,我会find一个方法来修改它。
如果你想在另一个string中find一个string,你通常会使用SEARCH()
(不区分大小写)或者FIND()
(区分大小写)。
=FIND(A2,A1) =SEARCH(A2,A1)
这可以被检查,如:
=IF(ISERROR(FIND(A2,A1)),Text not found","Text Found")
如果你想在单个文本字段中find一个单元格的范围,这有点棘手,它可能需要一个数组公式,让我知道这是你想要的,我会看看如果我可以解决。