学习Excel技术,关注微信公众号:
excelperfect
下面的自定义函数iCountString可以用来统计子字符串在字符串中出现的次数:
'----------------------------------
'strText:被查找的字符串
'strFind:要查找的子字符串
'blnCaseSensitive:是否区分大小写
'----------------------------------
Function iCountString(strText As String, _
strFind As String, _
Optional blnCaseSensitive As Boolean) _
As Integer
Dim iCount As Integer
Dim iPos As Integer
Dim iMode As Integer
'如果没有要查找的子字符串
'则返回0
If Len(strFind) > 0 Then
'是否区分大小写
If blnCaseSensitive Then
iMode = vbBinaryCompare
Else
iMode = vbTextCompare
End If
iPos = 1
'在字符串中循环查找
Do
iPos = InStr(iPos, strText, strFind,iMode)
'如果找到则计数加1
'同时将下次查找的位置更新为找到的字符串末尾
If iPos > 0 Then
iCount = iCount + 1
iPos = iPos + Len(strFind)
End If
Loop While iPos > 0
Else
iCount = 0
End If
'返回找到的数量
iCountString = iCount
End Function
使用下面的代码来测试iCountString函数:
Sub test()
Dim i As Integer
Dim str As String
Dim strSearch As String
str = "完美Excel是一个Excel技术分享平台"
strSearch = "Excel"
i = iCountString(str, strSearch, False)
MsgBox "找到了 " & i & " 个子字符串"
End Sub
运行后的结果如下图1所示。
图1
程序代码的图片版如下:
欢迎分享本文,转载请注明出处。
欢迎在下面留言,完善本文内容,让更多的人学到更完美的知识。
欢迎关注[完美Excel]微信公众号:
方法1—在微信通讯录中搜索“完美Excel”或者“excelperfect”后点击关注。
方法2—扫一扫下面的二维码
|
|