首页 > 解决方案 > 匹配范围内的单词,匹配范围内的第二个单词

问题描述

首先。这个论坛很棒。我已经使用了很多,并且不需要创建自己的问题。到现在。

我有一个数据表,在 O 列中有一个自由文本字段。我过滤掉了最常出现的单词并将它们总结在 sheet1 中。我使用匹配函数创建了列 P 来识别自由文本字段中出现次数最多的单词。我在 P 列中使用了以下公式。它适用于查找第一个出现频率最高的单词。

=IFERROR(INDEX(Sheet1!$B$2:$B$794;MATCH(1;COUNTIF(O8;"*"&Sheet1!$B$2:$B$794&"*");0));"")

(Sheet1!$B$2:$B$794 包含要搜索的单词)到目前为止,一切正常。

我想在 Q 列中添加另一个公式来查找第二个出现次数最多的单词。即它应该搜索它在第一页中找到的第一个匹配词,但不能是已经找到的词。

我尝试稍微调整公式以使用 COUNTIFS 添加另一个标准,但我无法使其工作。我试过这个公式:(在Q列中)

=IFERROR(INDEX(Sheet1!$B$2:$B$794;MATCH(1;COUNTIFS(O8;"*"&Sheet1!$B$2:$B$794&"*";O8;<>"*"&P8&"*");0));"")

粗体部分不起作用。

有什么建议可以解决吗?

另外,有没有办法发布一个示例excel表?

提前致谢!

编辑:

这是我正在寻找的输出。 Excel 示例所需的输出

它从一组预定义的单词中搜索单词,例如: Excel example search words

所以在这个例子中,我分析了每个单词在第一列“Commentaar”中出现的次数。显然,“en”这个词出现了 3 次,“pauze”这个词出现了 2 次,等等。我删除了一些我不感兴趣的词,例如“EN”。剩下的列表是我要搜索的一组单词。所以在 cel P8 中,它应该返回列表中与自由文本字段 I8 中的任何单词匹配的第一个单词。它找到的列表中的第一个匹配词是 Pauze,因此单元格 P8 返回“Pauze”,第二个匹配词是“Simulatie”,因此 Q8 返回 Simulatie。

我希望这使它更清楚一点

标签: excelexcel-formula

解决方案


这应该适用于所有版本的 Excel。为简单起见,这假设数据在列A中。

以下数组公式必须用 Ctrl-Shift-Enter 确认...

=INDEX(A1:A9,MATCH(LARGE(COUNTIF(A1:A9,A1:A9),MAX(COUNTIF(A1:A9,A1:A9))+1),COUNTIF(A1:A9,A1:A9),))

推荐阅读