数据列表,结果应包含“世界”字样,但不应提供“全球”字样。结果不应该将搜索键作为子字符串
答案 0 :(得分:0)
我想你想要计算包含特定单词的范围内的单元格数。您可以使用用户定义的功能 在VBA编辑器中,转到“插入”菜单,选择“模块”并添加以下代码。
Function CountWord(searchStr As String, rng As Range) As Long
Dim count As Long
Dim arr() As String
count = 0
For Each cel In rng
If Not cel Is Nothing Then
arr = Split(cel.Value, " ")
For i = LBound(arr) To UBound(arr)
If StrComp(arr(i), searchStr, vbTextCompare) = 0 Then
count = count + 1
Exit For
End If
Next i
End If
Next
CountWord = count
End Function
注意:上面的函数将计算包含指定单词的单元格数,即如果指定单词在单元格中出现多次,它仍将被计为1.如果要计算出现次数在某个范围内的某个字词,然后只需删除Exit For
条件中的If
。