wie kann ich mittels VBA prüfen, ob ein String einen bestimmten String enthält?
Beispiel:
Ich will prüfen, ob ein String den String "_L_" enthält.
Für "xxxad_L_asdfe" ist das zutreffend, für "xxxadL_asdfe" nicht.
Wie geht das?
Sub til()
Const SB as string = "_L_"
Msgbox InStr("xxxad_L_asdfe",SB) > 0
End Sub
Ergibt FASCH
Sub til()
Const SB as string = "_L_"
Msgbox InStr("xxxadL_asdfe",SB) > 0
End Sub
mfg Jan
Du möchtest in VBA überprüfen, ob ein bestimmter String ("L") in einem anderen String enthalten ist. Der Kontext des Strings ist dabei entscheidend, d.h. es sollten tatsächlich Unterstriche vor und nach dem "L" sein.
VBA bietet verschiedene Funktionen an, um Strings zu durchsuchen. In diesem Fall eignet sich die Funktion InStr
besonders gut.
Diese Überprüfung ist nützlich, wenn du bestimmte Bedingungen erfüllen möchtest, je nachdem, ob der gesuchte String im überprüften String vorkommt oder nicht.
Es erleichtert die Textmanipulation und Datenanalyse, indem es dir ermöglicht, spezielle Aktionen durchzuführen, je nachdem ob der spezifische String enthalten ist oder nicht.
Die Funktion InStr
prüft, ob ein String in einem anderen String enthalten ist und gibt die Position des ersten Vorkommens zurück. Wenn der String nicht gefunden wird, gibt die Funktion den Wert 0 zurück.
Hier ist ein einfaches VBA-Beispiel:
Dim strToCheck As String
Dim searchStr As String
Dim pos As Integer
strToCheck = "xxxad_L_asdfe"
searchStr = "_L_"
pos = InStr(strToCheck, searchStr)
If pos > 0 Then
MsgBox "Der String enthält '_L_'."
Else
MsgBox "Der String enthält '_L_' nicht."
End If
InStr
-Funktion ist nicht casesensitive, es sei denn, du stellst dies explizit ein.In VBA kannst du die InStr
-Funktion verwenden, um zu überprüfen, ob ein String einen anderen String enthält. Diese Methode ist einfach zu verwenden und äußerst nützlich für die Textmanipulation und Datenanalyse.