【问题标题】:Search a single cell for multiple words AND return all words found在单个单元格中搜索多个单词并返回找到的所有单词
【发布时间】:2019-02-28 10:21:41
【问题描述】:

我整天都在尝试在 Excel 中编写一个公式,它可以在一个字符串中搜索多个关键字,然后打印它在单元格中找到的关键字。

我已经搜索关键字列表并返回找到的第一个关键字,但我不知道如何让它返回后续匹配项。示例,完整的公式(也粘贴在下面):

=INDEX($C$2:$C$8,MATCH(1,COUNTIF(B2,"*" & $C$2:$C$8 & "*"),0))

我想要的只是让 A2 单元格包含“cat; mongoose”,而不仅仅是“cat”。我所做的所有搜索都提出了涉及returning 多个单元格或searching 多个单元格的解决方案。我什至不知道这是否是我可以用这个函数做的事情,因为直到三个小时前我才知道这个函数存在。我按照this webpage 上的说明一起破解了这个。

那太棒了!但现在我陷入困境、困惑和沮丧。我不知道我是否需要找到一个 UDF,或者是否有一些预先存在的 VBA 有人为此写过,所以感谢您的帮助!

【问题讨论】:

    标签: excel text excel-formula textjoin


    【解决方案1】:

    INDEX 只会返回一个值。使用 TEXTJOIN 作为数组公式

    =TEXTJOIN("; ",TRUE,IF(ISNUMBER(SEARCH(C$2:$C$8,B2)),C$2:$C$8,""))
    

    作为数组公式,退出编辑模式时必须使用 Ctrl-Shift-Enter 确认,而不是 Enter。

    TEXTJOIN 是随 Office 365 Excel 引入的。如果您没有 Office 365,则返回的每个单词或 vba 都需要单独的单元格。

    【讨论】:

      猜你喜欢
      • 2014-03-23
      • 1970-01-01
      • 2018-03-17
      • 2017-12-03
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-07-25
      • 1970-01-01
      相关资源
      最近更新 更多