Jak używać operatora like w vba (z przykładami)


Możesz użyć operatora Like w VBA, aby określić, czy ciąg zawiera określony wzorzec.

Na przykład możesz użyć następującej składni, aby sprawdzić, czy każdy ciąg w zakresie komórek A2:A10 zawiera podciąg „gorący” i wyświetlić wyniki w zakresie B2:B10 :

 SubCheckLike ()

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

Poniższy przykład pokazuje, jak zastosować tę składnię w praktyce.

Przykład: Jak używać operatora Like w VBA

Załóżmy, że mamy w Excelu następującą listę produktów spożywczych:

Możemy utworzyć następujące makro, aby sprawdzić, czy każdy ciąg w kolumnie A zawiera podciąg „hot” i wyświetlić wyniki w kolumnie B:

 SubCheckLike ()

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

Kiedy uruchomimy to makro, otrzymamy następujące dane wyjściowe:

Kolumna B wskazuje, czy każda pasująca komórka w kolumnie A zawiera „gorący” podciąg.

Zwróć uwagę, że wokół podciągu użyliśmy gwiazdek ( * ), aby wskazać, że dowolny znak może wystąpić przed lub po „gorącym” ciągu znaków w komórce.

Jeśli zamiast tego chcemy sprawdzić, czy każdy ciąg zaczyna się od „hot”, możemy umieścić gwiazdkę tylko po podciągu:

 SubCheckLike ()

Dim i As Integer
    
For i = 2 To 10
    If Range("A" & i) Like "hot*" Then
        Range("B" & i) = "Starts with hot"
    Else
        Range("B" & i) = "Does not start with hot"
    End If
Next i
    
End Sub

Kiedy uruchomimy to makro, otrzymamy następujące dane wyjściowe:

Kolumna B wskazuje , czy każda pasująca komórka w kolumnie A zaczyna się od „gorąca”.

Dodatkowe zasoby

Poniższe samouczki wyjaśniają, jak wykonywać inne typowe zadania przy użyciu języka VBA:

VBA: Jak liczyć wystąpienia znaków w ciągu
VBA: jak sprawdzić, czy ciąg zawiera inny ciąg
VBA: Jak liczyć komórki zawierające określony tekst

Dodaj komentarz

Twój adres e-mail nie zostanie opublikowany. Wymagane pola są oznaczone *