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:
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:
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