【问题标题】:Excel: For a cell, count the number of words used from a column with wordsExcel:对于一个单元格,计算从带有单词的列中使用的单词数
【发布时间】:2015-05-28 01:59:16
【问题描述】:

目标:搜索列中的单词(带有列表或单词)是否存在于带有句子的单元格中

解释: 我有两列,比如说 A 每个单元格包含一个句子。 B 列包含一个列表,每个单元格有 一个 个单词。对于A列中的每个单元格,我想知道是否使用了B列列表中的单词。

我想要 2 个不同的输出:

1) 在 C 列中,返回 A 列单元格中句子中 B 列中使用的单词数。比如说,在单元格 C2 中,返回 B 列中使用的单词数在单元格 A2 中的句子中。

例如,如果 B 列中的单词列表包含:

B2:猴子

B3:驴

B4:长颈鹿

B5:大象

单元格 A2 中的句子说:“猴子和大象在走路”,那么我想在单元格 C2 中返回数字“2”。

2) 在 D 列直到 Z?我想返回使用的单词。所以在上面的例子中,我想在单元格中返回:

D2:猴子

E2:大象

希望有人能帮帮我!

【问题讨论】:

    标签: excel vlookup


    【解决方案1】:

    这是第一部分:

    试试这个小UDF()

    Public Function WordCount(r1 As Range, r2 As Range) As Long
       ary = Split(r1.Text, " ")
       bry = r2.Value
       For Each a In ary
          For Each b In bry
             If a = b Then WordCount = WordCount + 1
          Next b
       Next a
    End Function
    

    用户定义函数 (UDF) 非常易于安装和使用:

    1. ALT-F11 调出 VBE 窗口
    2. ALT-I ALT-M 打开一个新模块
    3. 粘贴内容并关闭 VBE 窗口

    如果您保存工作簿,UDF 将与它一起保存。 如果您使用的是 2003 年以后的 Excel 版本,则必须保存 文件为 .xlsm 而不是 .xlsx

    要删除 UDF:

    1. 如上所示打开 VBE 窗口
    2. 清除代码
    3. 关闭 VBE 窗口

    要使用 Excel 中的 UDF:

    =myfunction(A1)

    要了解有关宏的更多信息,请参阅:

    http://www.mvps.org/dmcritchie/excel/getstarted.htm

    http://msdn.microsoft.com/en-us/library/ee814735(v=office.14).aspx

    有关 UDF 的详细信息,请参阅:

    http://www.cpearson.com/excel/WritingFunctionsInVBA.aspx

    必须启用宏才能正常工作!

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2016-03-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-06-18
      相关资源
      最近更新 更多