VBA Like Operator (лесни примери) | Как да използвам „Харесвам“ в Excel VBA?

VBA Like Operator

Like е оператор във VBA и това е оператор за сравнение, който сравнява даден низ като аргумент в набор от низове и той съвпада с модела, ако моделът е съпоставен, полученият резултат е истина и ако моделът не съвпада, тогава Полученият резултат е невярен, това е вграден оператор във VBA.

ОПЕРАТОРЪТ „LIKE“ е най-слабо използваният оператор въпреки прекрасното му използване. Не съм виждал много хора, които използват този оператор в пълна степен в кодирането си. Всъщност аз съм от тях, които не използват този оператор доста често. Операторът „VBA LIKE“ ни позволява да съпоставим модела на низа с пълния низ. Чрез използване на VBA LIKE оператор можем да сравним два низа спрямо дадения шаблон. Можем да проверим дали низът съдържа подниз в VBA или също така дали низът съдържа някакъв специфичен формат. Ако моделът съвпада с низа, тогава операторът VBA LIKE връща TRUE или FALSE.

Докато съвпадаме с низовете, ние трябва да използваме заместващи символи за посочения от нас шаблон. По-долу са заместващите символи, които използваме в оператора VBA LIKE.

  • Въпросителен знак (?): Използва се за съвпадение на който и да е символ от низа. Например, ако имаме низ „CAT“ и моделът е „C? T“, тогава операторът VBA LIKE връща TRUE. Ако низът е „CATCH и моделите са„ C? T “, тогава операторът VBA LIKE връща FALSE.
  • Звездичка (*): Това съвпада с нула или повече знака. Например, ако низът е „Добър“ и моделът е „G ** d“, VBA LIKE операторът връща TRUE.
  • Скоби ([]): Това съвпада с всеки един символ, посочен в скобите.
  • [Char-Char]: Това съвпада с всеки един знак от обхвата Char-Char.
  • [! Символи]: Това съвпада с всеки един символ, който не е в списъка.
  • [! Char-Char]: Това съвпада с всеки един символ, който не е в диапазона Char-Char.

Примери за VBA LIKE Operator

Нека да видим някои от примерите за VBA LIKE оператор сега.

Можете да изтеглите този шаблон на VBA Like Excel тук - VBA Like Excel Template

Пример # 1 - С въпросителна

Код:

 Sub QuestionMark_Example1 () Dim k As String k = "Good" If k Like "Go? D" Тогава MsgBox "Yes" Else MsgBox "No" End If End Sub 

В горния код сме предоставили низа като „Добър“, а моделът е „Go? D“. Тъй като въпросителният знак може да съвпада с един знак, той ще покаже резултата като „Да“.

Сега ще сменя низа на „Добро утро“.

Код:

 Sub QuestionMark_Example1 () Dim k As String k = "Добро утро" Ако k Like "Go? D" Тогава MsgBox "Да" Иначе MsgBox "Не" End If End Sub 

В този случай той ще покаже „Не“, защото сме добавили още една дума към низа, т.е. сутрин. За да съответстваме на произволен брой знаци, трябва да използваме звездичката.

Пример # 2 - със звездичка

Код:

 Sub QuestionMark_Example2 () Dim k As String k = "Добро утро" Ако k Like "* Good *" Тогава MsgBox "Да" Иначе MsgBox "Не" Край Ако край Sub 

В горния пример съм добавил две звездички преди и след символа “* Добър *”. Това ще съответства на думата „Добро“ в низа „Добро утро“ и връща „Да“.

Пример # 3 - със скоби []

Код:

 Sub QuestionMark_Example3 () Dim k As String k = "Добро утро" Ако k Like "* [M] *" Тогава MsgBox "Да" В противен случай MsgBox "Не" Край Ако край Sub 

Горният код съвпада с единичната буква, спомената в скобата „M“ и връща резултата като Да.

Пример # 4 - Със скоби и азбуки [AZ]

Код:

 Sub QuestionMark_Example4 () Dim k As String k = "Добро утро" Ако k Like "* [AD] *" Тогава MsgBox "Да" Иначе MsgBox "Не" Край Ако край Sub 

В горното споменах символите, които да съвпадат от А до Г.

Това ще се върне "Не", защото няма никакви знаци от А до D в низа "Добро утро" .

Сега ще сменя модела на [AH]

Код:

 Sub QuestionMark_Example4 () Dim k As String k = "Добро утро" Ако k Like "* [AH] *" Тогава MsgBox "Да" Иначе MsgBox "Не" Край Ако край Sub 

Това ще върне „Да“, защото от А до Н имаме знак „G“ в низа „Добро утро“

По този начин можем да използваме VBA оператор „LIKE“, за да съпоставим всеки низ от шаблона със символи на заместваща карта.