Como comparar strings em vba: com exemplos


Você pode usar os seguintes métodos em VBA para comparar strings:

Método 1: Comparando strings com distinção entre maiúsculas e minúsculas

 SubCompareStrings ()
    Dim i As Integer

    For i = 2 To 10
        Range(" C " & i) = StrComp(Range(" A " & i), Range(" B " & i)) = 0
    Next i
End Sub

Esta macro executará uma comparação de strings com distinção entre maiúsculas e minúsculas entre strings em células correspondentes nos intervalos A2:A10 e B2:B10 e retornará TRUE ou FALSE no intervalo C2:C10 para indicar se as strings são iguais ou não.

Método 2: comparação de strings sem distinção entre maiúsculas e minúsculas

 SubCompareStrings ()
    Dim i As Integer

    For i = 2 To 10
        Range(" C " & i) = StrComp(Range(" A " & i), Range(" B " & i), vbTextCompare) = 0
    Next i
End Sub

Esta macro executará uma comparação de strings sem distinção entre maiúsculas e minúsculas entre strings em células correspondentes nos intervalos A2:A10 e B2:B10 .

Os exemplos a seguir mostram como usar cada método na prática com as seguintes listas de strings no Excel:

Exemplo 1: Comparando strings que diferenciam maiúsculas de minúsculas em VBA

Podemos criar a seguinte macro para realizar uma comparação de strings com distinção entre maiúsculas e minúsculas entre cada string correspondente nas colunas A e B:

 SubCompareStrings ()
    Dim i As Integer

    For i = 2 To 10
        Range(" C " & i) = StrComp(Range(" A " & i), Range(" B " & i)) = 0
    Next i
End Sub

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

comparando strings com distinção entre maiúsculas e minúsculas no VBA

A coluna C retorna TRUE se as strings forem iguais e tiverem o mesmo caso.

Caso contrário, a coluna C retornará FALSE .

Exemplo 2: Comparando strings que não diferenciam maiúsculas de minúsculas em VBA

Podemos criar a seguinte macro para realizar uma comparação de string sem distinção entre maiúsculas e minúsculas entre cada string correspondente nas colunas A e B:

 SubCompareStrings ()
    Dim i As Integer

    For i = 2 To 10
        Range(" C " & i) = StrComp(Range(" A " & i), Range(" B " & i), vbTextCompare) = 0
    Next i
End Sub

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

comparação de strings sem distinção entre maiúsculas e minúsculas no VBA

A coluna C retorna TRUE se as strings forem iguais, independentemente do caso.

A coluna C retorna FALSE somente se as strings não forem iguais.

Nota : Você pode encontrar a documentação completa da função StrComp em VBA aqui .

Recursos adicionais

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

VBA: Como substituir caracteres em uma string
VBA: Como remover caracteres especiais de uma string
VBA: Como converter uma string em int

Add a Comment

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