源字符 | 含有多少个这样的字符 | VBA结果 | 公式实现 |
HelloWorld | O | 0 | 0 |
HelloWorld | o | 2 | 2 |
HelloWorld | l | 3 | 3 |
先说公式:
=LEN(A2)-LEN(SUBSTITUTE(A2,B2,""))
也就是获取长度 - 替换后的长度,这样就可以得到一共多少个字符
其中涉及的LEN函数,以及SUBSTITUTE函数,大家可以百度一下,很多的,随便看看就会了~
再说VBA 程序,代码如下:
Sub VBA小程序_获取单元格里面出现多少个字符()
For i = 2 To 4
'Cells(i, 3).Value = UBound(Split(Cells(i, 1), Cells(i, 2))) 我是注释,也可以这样写~
Range("C" & i).Value = UBound(Split(Range("A" & i), Range("B" & i)))
Next
End Sub
下面是为了加深理解,从而做的一些测试代码段,有兴趣的可以看看,没兴趣的直接忽略就好
'Sub test_1()
' MsgBox (UBound(Split("HelloWord", "l")))
'End Sub
'
'Sub test_2()
' Dim arr, str
' '理解Split的真正意义,函数返回一个数组,其中包含基于分隔符分割的特定数量的值。
' 'arr = Array(Split("HelloWord", "l")) '这种写法是不对的,因为他本身返回的就是数组
' arr = Split("HelloWord", "l")
' For Each str_1 In arr
' MsgBox (str_1)
' Next
'End Sub