Public
Function
ANZAHLBUCHSTABEN(
ParamArray
Args()
As
Variant
)
As
Integer
Dim
i
As
Integer
Dim
s
As
Integer
Dim
sum
As
Integer
sum = 0
Const
ALLOWED_CHARS =
"abcdefghijklmnopqrstuvwxyzß"
For
i = LBound(Args)
To
UBound(Args)
If
InStr(LCase(
CStr
(Args(i))), ALLOWED_CHARS) > 0
Then
For
s = 1
To
Len(Args(i))
If
Mid(LCase(
CStr
(Args(i))), s, 1) = ALLOWED_CHARS
Then
sum = sum + 1
Else
sum = sum + 0
End
If
Next
ElseIf
TypeName(Args(i)) =
"Range"
Then
Dim
Zelle
As
Range
For
Each
Zelle
In
Args(i)
If
InStr(LCase(
CStr
(Zelle.Value)), ALLOWED_CHARS) > 0
Then
For
s = 1
To
Len(Zelle.Value)
If
Mid(LCase(
CStr
(Zelle.Value)), s, 1) = ALLOWED_CHARS
Then
sum = sum + 1
Else
sum = sum + 0
End
If
Next
End
If
Next
Else
sum = sum + 0
End
If
ANZAHLBUCHSTABEN = sum
Next
End
Function
Sub
SetFunctionInfos()
Application.MacroOptions Macro:=
"ANZAHLBUCHSTABEN"
, Description:=
"Funktion zur Bestimmung der Anzahl von vorkommenden Buchstaben"
, Category:=9
End
Sub