Vba: проста формула для «якщо клітинка містить»


Ви можете використовувати такий базовий синтаксис, щоб використовувати формулу для «якщо клітинка містить» у VBA:

 Sub IfContains()
    Dim i As Integer

    For i = 2 To 8
        If InStr(1, LCase(Range(" A " & i)), " turtle ") <> 0 Then
        Result = " Contains Turtle "
        Else
        Result = “ Does Not Contain TurtleEnd If
    Range(" B " & i) = Result
    Next i
End Sub

У цьому прикладі перевіряється, чи кожна клітинка в діапазоні A2:A8 містить «черепаху», а потім призначає «Містить черепаху» або «Не містить черепаху» кожній відповідній клітинці в діапазоні B2:B8 .

Примітка . Метод Instr перевіряє, чи містить рядок інший рядок, а метод LCase перетворює текст на нижній регістр для виконання пошуку без урахування регістру.

У наступному прикладі показано, як використовувати цей синтаксис на практиці.

Приклад: як використовувати «Якщо клітинка містить» у VBA

Припустімо, що ми маємо такий список комірок в Excel, кожна з яких містить різний текст:

Припустімо, ми хочемо перевірити, чи кожна клітинка в діапазоні A2:A8 містить текст «черепаха», і відобразити результати у відповідних клітинках в діапазоні B2:B8 .

Для цього ми можемо створити такий макрос:

 Sub IfContains()
    Dim i As Integer

    For i = 2 To 8
        If InStr(1, LCase(Range(" A " & i)), " turtle ") <> 0 Then
        Result = " Contains Turtle "
        Else
        Result = “ Does Not Contain TurtleEnd If
    Range(" B " & i) = Result
    Next i
End Sub

Коли ми запускаємо цей макрос, ми отримуємо такий результат:

Стовпець B повідомляє нам, чи містять відповідні клітинки в стовпці A «черепаху» десь у тексті.

Примітка . Ви можете знайти повну документацію для методу VBA Instr тут .

Додаткові ресурси

У наступних посібниках пояснюється, як виконувати інші типові завдання у VBA:

VBA: як підрахувати випадки появи символів у рядку
VBA: як перевірити, чи містить рядок інший рядок

Додати коментар

Ваша e-mail адреса не оприлюднюватиметься. Обов’язкові поля позначені *