我帮你写了个函数,你看看,,抵不抵用Function InStrTime(ByVal str As String, ByVal find As String) As Integer Dim iCount As Integer Do While InStr(str, find) str = Mid(str, InStr(str, find) + 1) iCount = iCount + 1 Loop InStrTime = iCount End Function
i=len(s)-len(replace$(s,"?",""))debug.print "共出现“?”:" & i & "次"
改一下 这样就不错了Function InStrTime(ByVal str As String, ByVal find As String) As Integer InStrTime = (Len(str) - Len(Replace(str, find, ""))) / Len(find) End Function
呵呵!这么快就消化成自己的东西了!支持! 不过该用“\”,而不是“/”,效率会高得多,这一点建议养成好习惯!方法当然有很多,上面只是举了一例! 看看下面的方法,是不是也有些价值:i=UBound(Split(s, "?"))debug.print "共出现“?”:" & i & "次"
Dim iCount As Integer
Do While InStr(str, find)
str = Mid(str, InStr(str, find) + 1)
iCount = iCount + 1
Loop
InStrTime = iCount
End Function
这样就不错了Function InStrTime(ByVal str As String, ByVal find As String) As Integer
InStrTime = (Len(str) - Len(Replace(str, find, ""))) / Len(find)
End Function
不过该用“\”,而不是“/”,效率会高得多,这一点建议养成好习惯!方法当然有很多,上面只是举了一例!
看看下面的方法,是不是也有些价值:i=UBound(Split(s, "?"))debug.print "共出现“?”:" & i & "次"