Option Explicit Sub abc() Dim a, i a = [a1].CurrentRegion.Offset(1).Resize(, 1).Value For i = 1 To UBound(a) - 1 a(i, 1) = Len(a(i, 1)) - Len(Replace(a(i, 1), "1", vbNullString)) Next [c2].Resize(UBound(a) - 1) = a End Sub
'当匹配的字符串长度>1是结果有问题,修改了一下。 Option Explicit Const STR As String = "11" Sub abc() Dim a, i a = [a1].CurrentRegion.Offset(1).Resize(, 1).Value For i = 1 To UBound(a) - 1 a(i, 1) = (Len(a(i, 1)) - Len(Replace(a(i, 1), STR, vbNullString))) / Len(STR) Next [c2].Resize(UBound(a) - 1) = a End Sub