Como usar curingas em vba (com exemplos)


Você pode usar o operador Like no VBA com os seguintes curingas integrados para pesquisar padrões específicos em strings:

  • * : Corresponde a qualquer número de caracteres
  • ? : Corresponde a um único caractere
  • # : corresponde a um único dígito
  • [] : corresponde a qualquer caractere dentro do intervalo

Os exemplos a seguir mostram como usar esses curingas na prática.

Exemplo 1: Use *Wildcard para procurar uma substring

Suponha que temos a seguinte lista de alimentos na coluna A:

Podemos criar a seguinte macro para procurar a substring “quente” em cada string na coluna A e exibir os resultados na coluna B:

 Sub FindString()

    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

Quando executamos esta macro, recebemos a seguinte saída:

Exemplo 2: Use o caractere curinga * para pesquisar strings que terminem com um padrão

Suponha que temos a seguinte lista de nomes de times de basquete na coluna A:

Podemos criar a seguinte macro para procurar strings na coluna A que terminam em “ets” e exibir os resultados na coluna B:

 Sub FindEndingString()

    Dim i As Integer
    
    For i = 2 To 10
        If Range(" A " & i) Like " *ets " Then
            Range(" B " & i) = " Ends in ets "
        Else
            Range(" B " & i) = " Does Not End in ets "
        End If
    Next i
    
End Sub

Quando executamos esta macro, recebemos a seguinte saída:

Exemplo 3: Use o curinga # para pesquisar números

Suponha que temos a seguinte lista de strings na coluna A:

Podemos criar a seguinte macro para procurar strings na coluna A contendo números e exibir os resultados na coluna B:

 SubFindNumbers ()

    Dim i As Integer
    
    For i = 2 To 10
        If Range(" A " & i) Like " *#* " Then
            Range(" B " & i) = " Contains Numbers "
        Else
            Range(" B " & i) = " Does Not Contain Numbers "
        End If
    Next i
    
End Sub

Quando executamos esta macro, recebemos a seguinte saída:

Exemplo 4: Use o curinga [] para pesquisar vários caracteres

Suponha que temos a seguinte lista de nomes de times de basquete na coluna A:

Podemos criar a seguinte macro para pesquisar na coluna A strings contendo r, s ou t em algum lugar do nome da equipe e exibir os resultados na coluna B:

 Sub FindSpecificLetters()

    Dim i As Integer
    
    For i = 2 To 10
        If Range(" A " & i) Like " *[rt]* " Then
            Range(" B " & i) = " Contains r, s, or t "
        Else
            Range(" B " & i) = " Does Not Contain r, s or t "
        End If
    Next i
    
End Sub

Quando executamos esta macro, recebemos a seguinte saída:

Nota : Você pode encontrar a documentação completa do curinga do VBA aqui .

Recursos adicionais

Os tutoriais a seguir explicam como realizar outras tarefas comuns usando VBA:

VBA: Como contar ocorrências de caracteres em uma string
VBA: como verificar se uma string contém outra string
VBA: Como contar células com texto específico

Add a Comment

O seu endereço de email não será publicado. Campos obrigatórios marcados com *