Как использовать оператор 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: как подсчитать ячейки с определенным текстом