Aqui é o equivalente VBA código para contar o número de células contendo pelo menos um corda
Sub StringCounter()
Dim r As Range, s As String, i As Long
s = "*string*"
For Each sh In Sheets
Set r = sh.Range("C2:C150")
i = i + Application.WorksheetFunction.CountIf(r, s)
Next sh
MsgBox i
End Sub
EDIT # 1:
Aqui está o código para contar o número de cordas Contará vários corda dentro de uma única célula:
Sub StringCounter_II_The_Sequel()
Dim r As Range, s As String, i As Long
Dim rr As Range, L As Long
s = "string"
L = Len(s)
For Each sh In Sheets
Set r = sh.Range("C2:C150")
For Each rr In r
txt = rr.Text
If InStr(txt, s) > 0 Then
i = i + (Len(txt) - Len(Replace(txt, s, ""))) / L
End If
Next rr
Next sh
MsgBox i
End Sub
EDIT # 2:
o matemática funciona da seguinte maneira:
- dizem que há três corda em uma célula e o número de caracteres nessa célula é 100
- a substituir remove todas as três instâncias e o novo comprimento é de 82
- o subtrair resulta em 18
- a divisão resulta em 3 (porque a palavra corda tem 6 caracteres de comprimento)