VBA Like Operator (exemplos fáceis) - Como usar "Curtir" no Excel VBA?

VBA Like Operator

Like é um operador em VBA e este é um operador de comparação que compara uma determinada string como argumento em um conjunto de strings e corresponde ao padrão, se o padrão for correspondido, o resultado obtido é verdadeiro e se o padrão não corresponder, o resultado obtido é falso, este é um operador embutido no VBA.

O operador “LIKE” é o menos utilizado, apesar de seu uso maravilhoso. Não tenho visto muitas pessoas que usam esse operador em toda a extensão em sua codificação. Na verdade, sou um deles que não usa esse operador com frequência. O operador “VBA LIKE” nos permite comparar o padrão da string com a string inteira. Usando o operador VBA LIKE, podemos comparar duas strings com o padrão fornecido. Podemos verificar se a string contém uma substring em VBA ou também se a string contém algum formato específico. Se o padrão corresponder à string, o operador VBA LIKE retornará TRUE ou FALSE.

Ao combinar strings, precisamos usar caracteres curinga para o padrão que especificamos. Abaixo estão os curingas que usamos no operador VBA LIKE.

  • Ponto de interrogação (?): É usado para corresponder a qualquer caractere da string. Por exemplo, se tivermos uma string “CAT” e o padrão for “C? T”, o operador VBA LIKE retornará TRUE. Se a string for “CATCH e os padrões forem“ C? T ”, o operador VBA LIKE retornará FALSE.
  • Asterisco (*): Corresponde a zero ou mais caracteres. Por exemplo, se a string for “Good” e o padrão for “G ** d,” o operador VBA LIKE retornará TRUE.
  • Colchetes (()): Corresponde a qualquer caractere único especificado nos colchetes.
  • (Char-Char): Corresponde a qualquer caractere único no intervalo Char-Char.
  • (! Chars): Corresponde a qualquer caractere único que não esteja na lista.
  • (! Char-Char): Corresponde a qualquer caractere único que não esteja no intervalo Char-Char.

Exemplos de operador VBA LIKE

Vamos ver alguns dos exemplos do operador VBA LIKE agora.

Exemplo # 1 - com ponto de interrogação

Código:

Sub QuestionMark_Example1 () Dim k As String k = "Bom" If k Like "Go? D" Then MsgBox "Sim" Else MsgBox "Não" End If End Sub

No código acima, fornecemos a string como "Good" e o padrão é "Go? D." Como o ponto de interrogação pode corresponder a um único caractere, ele mostrará o resultado como “Sim”.

Agora vou mudar a string para "Bom dia".

Código:

Sub QuestionMark_Example1 () Dim k As String k = "Bom dia" If k Like "Go? D" Then MsgBox "Sim" Else MsgBox "Não" End If End Sub

Nesse caso, ele mostrará “Não” porque adicionamos mais uma palavra à string, ou seja, Manhã. Para corresponder a qualquer número de caracteres, precisamos usar o asterisco.

Exemplo # 2 - com asterisco

Código:

Sub QuestionMark_Example2 () Dim k As String k = "Bom dia" If k Like "* Good *" Then MsgBox "Sim" Else MsgBox "Não" End If End Sub

No exemplo acima, adicionei dois asteriscos antes e depois do caractere “* Bom *.” Isso corresponderá à palavra "Bom" na string "Bom dia" e retornará "Sim".

Exemplo # 3 - Com colchetes ()

Código:

Sub QuestionMark_Example3 () Dim k As String k = "Bom dia" If k Like "* (M) *" Then MsgBox "Sim" Else MsgBox "Não" End If End Sub

O código acima corresponde à única letra mencionada no colchete “M” e retorna o resultado como Sim.

Exemplo # 4 - Com colchetes e alfabetos (AZ)

Código:

Sub QuestionMark_Example4 () Dim k As String k = "Bom dia" If k Like "* (AD) *" Then MsgBox "Sim" Else MsgBox "Não" End If End Sub

Acima, mencionei os caracteres para combinar de A a D.

Isso retornará "Não" porque não há caracteres de A a D na string "Bom dia".

Agora vou mudar o padrão para (AH)

Código:

Sub QuestionMark_Example4 () Dim k As String k = "Bom dia" If k Like "* (AH) *" Then MsgBox "Sim" Else MsgBox "Não" End If End Sub

Isso retornará "Sim" porque de A a H, temos um caractere "G" na string "Bom dia".

Assim, podemos usar o operador VBA “LIKE” para combinar qualquer string do padrão com caracteres curinga.

Artigos interessantes...