我在Excel文件中有2张纸。一个是字典工作表,第二个是包含一列文本的工作表。我想一一匹配字典关键字列,然后在文本列的每个单元格中计算匹配关键字的数量。
我尝试了以下公式: =(LEN(B2)-LEN(SUBSTITUTE(B2,Sheet1!A:A,“”))))/ LEN(Sheet1!A:A) 此B2中的text列是第一个(开始)单元格,Sheet1!A:A是其他工作表的字典列。 但这样我得到零
=(LEN(B2)-LEN(SUBSTITUTE(B2,Sheet1!A:A,“”)))/ LEN(Sheet1!A:A)
结果将如下所示::
Text number_of_keyword_match | number_of_keyword_match using DIC col 2 | ........
using DIC col 1
1 any Text or sentence/sentences e.g match "3"
2 7
3 0
4 15
5 .................................................
7 .....................................................
.......................................................
..................................continue up to 2815 rows....
答案 0 :(得分:1)
假设您的文本输入如下:
| A |
-+----------------------+
1|apple apple beat beat |
2|apple beat beat carrot|
3|carrot apple apple |
您的字典如下:
| A | B |
-+-------+-------+
1|apple |beat |
2|beat |carrot |
3| | |
此公式将为您提供每个单元格文本每个单词的计数
=(LEN(text!A1)-LEN(SUBSTITUTE(text!A1,dictionary!A1,"")))/LEN(dictionary!A1)
(在此示例中为2
)
如果我的理解正确,您的预期输出将是text
工作表中的多余列,其中每个单元格包含dictionary
中相应列中每个单词的计数总和,对吗?例如:
| A | B | C |
-+----------------------+---+---+
1|apple apple beat beat | 4 | 2 |
2|apple beat beat carrot| 3 | 3 |
3|carrot apple apple | 2 | 1 |
您可以使用array formulas进行此操作,从单元格B1中的该地址开始:
=SUM(IFERROR((LEN(text!$A1)-LEN(SUBSTITUTE(text!$A1;dictionary!A:A;"")))/LEN(dictionary!A:A);0))
但不要在粘贴后按Enter
,而是按Ctrl+Shift+Enter
将其作为数组公式运行。然后将该公式向下并向右拖动以获得所需的所有计数。
答案 1 :(得分:0)