Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/string/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Excel 查找单元格中某个单词的出现次数_Excel - Fatal编程技术网

Excel 查找单元格中某个单词的出现次数

Excel 查找单元格中某个单词的出现次数,excel,Excel,我试图找到字符串单元格中给定单词的出现次数。用于计算发生率的可能公式是什么?假设A1具有fun-fun-no-fun并且您想知道“fun”发生了多少次,可以使用以下公式: =(LEN(A1)-LEN(SUBSTITUTE(A1,"fun","")))/LEN("fun") 编辑:注意这可能不是完美的,因为它将返回funky fun no的3,而不是2。您可以通过在要查找的单词周围添加空格来解决此问题…然后检查单元格中的第一个单词是否与您想要的匹配。。。所以我认为这是一个有限的用例 如果您只需要

我试图找到字符串单元格中给定单词的出现次数。用于计算发生率的可能公式是什么?

假设
A1
具有
fun-fun-no-fun
并且您想知道“fun”发生了多少次,可以使用以下公式:

=(LEN(A1)-LEN(SUBSTITUTE(A1,"fun","")))/LEN("fun")

编辑:注意这可能不是完美的,因为它将返回
funky fun no
3
,而不是
2
。您可以通过在要查找的单词周围添加空格来解决此问题…然后检查单元格中的第一个单词是否与您想要的匹配。。。所以我认为这是一个有限的用例

如果您只需要计算整个单词,这有点麻烦,但可以:

=SUMPRODUCT(--(TRIM(MID(SUBSTITUTE(TRIM(A1)," ",REPT(" ",LEN(A1))),LEN(A1)*(ROW(A$1:INDEX($A:$A,LEN(TRIM(A1))-LEN(SUBSTITUTE(TRIM(A1)," ",""))+1))-1)+1,LEN(A1)))="fun"))

如果您无法通过标准公式方法获得答案,请尝试此自定义项。将其放入VBA编辑器中的新模块中。如果您不确定如何在excel VBA中创建新模块,请使用Google“如何在excel VBA中创建新模块”

Public Function CountSpecificWord(ByVal strText As String, ByVal strWord As String, Optional ByVal bIgnoreCase As Boolean = False) As Long
    Application.Volatile

    Dim i As Long, strThisWord As String, arrWords() As String

    arrWords = Split(strText, " ")

    If bIgnoreCase Then strWord = UCase(strWord)

    For i = 0 To UBound(arrWords)
        strThisWord = arrWords(i)
        If bIgnoreCase Then strThisWord = UCase(strThisWord)
        If strWord = strThisWord Then CountSpecificWord = CountSpecificWord + 1
    Next
End Function
有两个参数

  • strText-要在其中搜索的文本
  • strWord-您要搜索的文本
  • bIgnoreCase-是否希望搜索区分大小写?这是可选的,默认值为false
然后你可以在一个单元格中使用它


我希望这能有所帮助。

您能给出一些输入和输出示例吗?你需要完整的文字吗?