Как использовать оператор like в vba (с примерами)


Вы можете использовать оператор Like в VBA, чтобы определить, содержит ли строка определенный шаблон.

Например, вы можете использовать следующий синтаксис, чтобы проверить, содержит ли каждая строка в диапазоне ячеек A2:A10 подстроку «горячие», и отобразить результаты в диапазоне 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

В следующем примере показано, как использовать этот синтаксис на практике.

Пример: как использовать оператор Like в VBA

Предположим, у нас есть следующий список продуктов в Excel:

Мы можем создать следующий макрос, чтобы проверить, содержит ли каждая строка в столбце A подстроку «горячий», и отобразить результаты в столбце 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

Когда мы запускаем этот макрос, мы получаем следующий вывод:

Столбец B указывает, содержит ли каждая совпадающая ячейка в столбце A «горячую» подстроку.

Обратите внимание, что мы использовали звездочки ( * ) вокруг подстроки, чтобы указать, что любой символ может идти до или после «горячей» строки в ячейке.

Если вместо этого мы хотим проверить, начинается ли каждая строка с «горячего», мы могли бы поставить звездочку только после подстроки:

 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

Когда мы запускаем этот макрос, мы получаем следующий вывод:

Столбец B указывает , начинается ли каждая совпадающая ячейка в столбце A с «горячего».

Дополнительные ресурсы

В следующих руководствах объясняется, как выполнять другие распространенные задачи с помощью VBA:

VBA: как подсчитать вхождение символов в строку
VBA: как проверить, содержит ли строка другую строку
VBA: как подсчитать ячейки с определенным текстом

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *