Come confrontare le stringhe in vba: con esempi


È possibile utilizzare i seguenti metodi in VBA per confrontare le stringhe:

Metodo 1: confronto tra stringhe con distinzione tra maiuscole e minuscole

 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

Questa macro eseguirà un confronto tra stringhe con distinzione tra maiuscole e minuscole tra le stringhe nelle celle corrispondenti negli intervalli A2:A10 e B2:B10 e restituirà VERO o FALSO nell’intervallo C2:C10 per indicare se le stringhe sono uguali o meno.

Metodo 2: confronto tra stringhe senza distinzione tra maiuscole e minuscole

 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

Questa macro eseguirà un confronto tra stringhe senza distinzione tra maiuscole e minuscole tra le stringhe nelle celle corrispondenti negli intervalli A2:A10 e B2:B10 .

I seguenti esempi mostrano come utilizzare nella pratica ciascun metodo con i seguenti elenchi di stringhe in Excel:

Esempio 1: confronto di stringhe con distinzione tra maiuscole e minuscole in VBA

Possiamo creare la seguente macro per eseguire un confronto di stringhe con distinzione tra maiuscole e minuscole tra ciascuna stringa corrispondente nelle colonne 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 eseguiamo questa macro, riceviamo il seguente output:

confronto delle stringhe con distinzione tra maiuscole e minuscole in VBA

La colonna C restituisce TRUE se le stringhe sono uguali e hanno lo stesso caso.

Altrimenti, la colonna C restituisce FALSE .

Esempio 2: confronto di stringhe senza distinzione tra maiuscole e minuscole in VBA

Possiamo creare la seguente macro per eseguire un confronto di stringhe senza distinzione tra maiuscole e minuscole tra ciascuna stringa corrispondente nelle colonne 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 eseguiamo questa macro, riceviamo il seguente output:

confronto di stringhe senza distinzione tra maiuscole e minuscole in VBA

La colonna C restituisce TRUE se le stringhe sono uguali, indipendentemente dal caso.

La colonna C restituisce FALSE solo se le stringhe non sono uguali.

Nota : qui è possibile trovare la documentazione completa della funzione StrComp in VBA.

Risorse addizionali

I seguenti tutorial spiegano come eseguire altre attività comuni in VBA:

VBA: come sostituire i caratteri in una stringa
VBA: come rimuovere caratteri speciali da una stringa
VBA: come convertire una stringa in int

Aggiungi un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *