So verwenden sie platzhalter in vba (mit beispielen)


Sie können den Like- Operator in VBA mit den folgenden integrierten Platzhaltern verwenden, um nach bestimmten Mustern in Zeichenfolgen zu suchen:

  • * : Entspricht einer beliebigen Anzahl von Zeichen
  • ? : Entspricht einem einzelnen Zeichen
  • # : entspricht einer einzelnen Ziffer
  • [] : Entspricht jedem Zeichen innerhalb des Bereichs

Die folgenden Beispiele zeigen, wie Sie diese Platzhalter in der Praxis verwenden.

Beispiel 1: Verwenden Sie *Wildcard, um nach einer Teilzeichenfolge zu suchen

Angenommen, wir haben die folgende Liste von Lebensmitteln in Spalte A:

Wir können das folgende Makro erstellen, um in jeder Zeichenfolge in Spalte A nach der „heißen“ Teilzeichenfolge zu suchen und die Ergebnisse in Spalte B anzuzeigen:

 Sub FindString()

    Dim i As Integer
    
    For i = 2 To 10
        If Range(" A " & i) Like " *hot* " Then
            Range(" B " & i) = " Contains hot "
        Else
            Range(" B " & i) = " Does Not Contain hot "
        End If
    Next i
    
End Sub

Wenn wir dieses Makro ausführen, erhalten wir die folgende Ausgabe:

Beispiel 2: Verwenden Sie das Platzhalterzeichen *, um nach Zeichenfolgen zu suchen, die mit einem Muster enden

Angenommen, wir haben die folgende Liste von Basketballmannschaftsnamen in Spalte A:

Wir können das folgende Makro erstellen, um in Spalte A nach Zeichenfolgen zu suchen, die auf „ets“ enden, und die Ergebnisse in Spalte B anzuzeigen:

 Sub FindEndingString()

    Dim i As Integer
    
    For i = 2 To 10
        If Range(" A " & i) Like " *ets " Then
            Range(" B " & i) = " Ends in ets "
        Else
            Range(" B " & i) = " Does Not End in ets "
        End If
    Next i
    
End Sub

Wenn wir dieses Makro ausführen, erhalten wir die folgende Ausgabe:

Beispiel 3: Verwenden Sie den Platzhalter #, um nach Zahlen zu suchen

Angenommen, wir haben die folgende Liste von Zeichenfolgen in Spalte A:

Wir können das folgende Makro erstellen, um in Spalte A nach Zeichenfolgen mit Zahlen zu suchen und die Ergebnisse in Spalte B anzuzeigen:

 SubFindNumbers ()

    Dim i As Integer
    
    For i = 2 To 10
        If Range(" A " & i) Like " *#* " Then
            Range(" B " & i) = " Contains Numbers "
        Else
            Range(" B " & i) = " Does Not Contain Numbers "
        End If
    Next i
    
End Sub

Wenn wir dieses Makro ausführen, erhalten wir die folgende Ausgabe:

Beispiel 4: Verwenden Sie den Platzhalter [], um nach mehreren Zeichen zu suchen

Angenommen, wir haben die folgende Liste von Basketballmannschaftsnamen in Spalte A:

Wir können das folgende Makro erstellen, um Spalte A nach Zeichenfolgen zu durchsuchen, die irgendwo im Teamnamen ein r, s oder t enthalten, und die Ergebnisse in Spalte B anzuzeigen:

 Sub FindSpecificLetters()

    Dim i As Integer
    
    For i = 2 To 10
        If Range(" A " & i) Like " *[rt]* " Then
            Range(" B " & i) = " Contains r, s, or t "
        Else
            Range(" B " & i) = " Does Not Contain r, s or t "
        End If
    Next i
    
End Sub

Wenn wir dieses Makro ausführen, erhalten wir die folgende Ausgabe:

Hinweis : Die vollständige VBA-Wildcard-Dokumentation finden Sie hier .

Zusätzliche Ressourcen

In den folgenden Tutorials wird erklärt, wie Sie andere häufige Aufgaben mit VBA ausführen:

VBA: So zählen Sie das Vorkommen von Zeichen in einer Zeichenfolge
VBA: So überprüfen Sie, ob eine Zeichenfolge eine andere Zeichenfolge enthält
VBA: So zählen Sie Zellen mit bestimmtem Text

Einen Kommentar hinzufügen

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert