Eine IN Funktion für Excel VBA
Hier basierend auf einem Beispiel von Microsoft eine IN-Funktion. Mit dieser lässt sich prüfen, ob ein String in einem zusammengesetzten String enthalten ist.
Option Explicit
Function Contains(needle As String, haystack As String, separator As String) As Boolean
Dim rv As Boolean, lb As Long, ub As Long, i As Long, field() As String
field = Split(haystack, separator)
lb = LBound(field)
ub = UBound(field)
For i = lb To ub
If field(i) = needle Then
rv = True
Exit For
End If
Next i
Contains = rv
End Function |
Nachtrag: Möchte man prüfen, ob ein Wert in einer Range vorhanden ist, kann man die folgende User-Defined Function nutzen:
Function InRange(needle As Variant, haystack As Range) As Boolean
Dim rv As Boolean, cell As Range
For Each cell In haystack
If cell = needle Then
rv = True
Exit For
End If
Next cell
InRange = rv
End Function |
