VBA: переменная с несколькими значениями (текст) - PullRequest
0 голосов
/ 09 мая 2018

Действительно неопытный в VBA Я пытаюсь построить макрос для поиска различных строк в нескольких столбцах. Я ищу шаблон как: " [ang]" " [fre]" "_ [ger]

На данный момент я могу найти _ [ang] в столбце H, но я думаю, что есть способ найти все три шаблона с помощью одной формулы. Важной частью является добавление заметки в определенную ячейку (поэтому я использую cel.Offset (0, 4))

Sub testsearch()
    For Each cel In ActiveSheet.Range("H1:H" & Range("H" & Rows.Count).End(xlUp).Row)
        If cel Like "*_[ang]*" Then
            cel.Offset(0, 4) = "_[ang]"
        End If
    Next cel
End Sub

1 Ответ

0 голосов
/ 09 мая 2018

Как насчет этого ..

Sub testsearch()

    Application.ScreenUpdating = False

    Dim string_patterns As Variant

    string_patterns = Array("_[ang]", "[fre]", "_[ger]")

    For Each cel In ActiveSheet.Range("H1:H" & Range("H" & Rows.Count).End(xlUp).Row)

        For Each element In string_patterns

            If cel Like "*" & CStr(element) & "*" Then
                cel.Offset(0, 4) = CStr(element)
                Exit For
            End If

        Next element

    Next cel

    Application.ScreenUpdating = True

End Sub
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...