Come confrontare due celle in Excel (confronto di stringhe)

Il tutorial mostra come confrontare le stringhe di testo in Excel per la corrispondenza maiuscola o esatta. Imparerete una serie di formule per confrontare due celle in base ai loro valori, alla lunghezza della stringa, o al numero di occorrenze di un carattere specifico, nonché come confrontare più celle.

Quando si usa Excel per l’analisi dei dati, la precisione è la preoccupazione più importante. Le informazioni errate portano a scadenze mancate, tendenze mal valutate, decisioni sbagliate e mancati guadagni.

Mentre le formule di Excel sono sempre perfettamente vere, i loro risultati possono essere sbagliati perché alcuni dati difettosi sono penetrati nel sistema. In questo caso, l’unico rimedio è controllare la precisione dei dati. Non è un grosso problema confrontare due celle manualmente, ma è quasi impossibile individuare le differenze tra centinaia e migliaia di stringhe di testo.

Questo tutorial vi insegnerà come automatizzare il compito noioso e soggetto a errori del confronto tra celle e quali formule è meglio usare in ogni caso particolare.

  • Come confrontare 2 celle in Excel
  • Come confrontare più celle
  • Confrontare un intervallo di celle con una cella campione
  • Confrontare celle per lunghezza della stringa
  • Confrontare per occorrenze di un carattere specifico

Come confrontare due celle in Excel

Ci sono due modi diversi di confrontare le stringhe in Excel a seconda che si cerchi il confronto case-sensibile alle maiuscole o insensibile alle maiuscole.

Formula non sensibile alle maiuscole per confrontare 2 celle

Per confrontare due celle in Excel ignorando le maiuscole e le minuscole, usate una semplice formula come questa:

=A1=B1

dove A1 e B1 sono le celle che state confrontando. Il risultato della formula sono i valori booleani VERO e FALSO.

Se volete emettere i vostri testi per le corrispondenze e le differenze, inserite la dichiarazione di cui sopra nel test logico della funzione IF. Per esempio:

=IF(A1=B1, "Equal", "Not equal")

Come vedete nello screenshot qui sotto, entrambe le formule confrontano stringhe di testo, date e numeri ugualmente bene:
Formula non sensibile alle maiuscole per confrontare 2 celle in Excel

Formula sensibile alle maiuscole per confrontare stringhe in Excel

In alcune situazioni, può essere importante non solo confrontare il testo in due celle, ma anche confrontare il caso dei caratteri. Il confronto del testo sensibile alle maiuscole può essere fatto usando la funzione EXACT di Excel:

EXACT (text1, text2)

dove text1 e text2 sono le due celle da confrontare.

Assumendo che le vostre stringhe siano nelle celle A2 e B2, la formula va come segue:

=EXACT(A2, B2)

Come risultato, si ottiene TRUE per le stringhe di testo corrispondono esattamente includendo il caso di ogni carattere, FALSE altrimenti.

Se volete che la funzione EXACT fornisca altri risultati, incorporatela in una formula IF e digitate il vostro testo per gli argomenti value_if_true e value_if_false:

=IF(EXACT(A2 ,B2), "Exactly equal", "Not equal")

La seguente schermata mostra i risultati del confronto di stringhe case-sensitive in Excel:
Formula non sensibile alle maiuscole per confrontare le stringhe in Excel

Come confrontare più celle in Excel

Per confrontare più di 2 celle in una riga, usa le formule discusse negli esempi precedenti in combinazione con l’operatore AND. I dettagli completi seguono qui sotto.

Formula insensibile alle maiuscole per confrontare più di 2 celle

A seconda di come vuoi visualizzare i risultati, utilizza una delle seguenti formule:

=AND(A2=B2, A2=C2)

o

=IF(AND(A2=B2, A2=C2), "Equal", "Not equal")

La formula AND restituisce VERO se tutte le celle contengono lo stesso valore, FALSO se qualche valore è diverso. La formula IF restituisce le etichette che vi digitate, “Uguale” e “Non uguale” in questo esempio.

Come dimostrato nello screenshot qui sotto, la formula funziona perfettamente con qualsiasi tipo di dati – testo, date e valori numerici:

Confronto di più celle ignorando il caso dei caratteri

Formula sensibile alle maiuscole e alle minuscole per confrontare il testo in più celle

Per confrontare più stringhe tra loro per vedere se corrispondono esattamente, usate le seguenti formule:

=AND(EXACT(A2,B2), EXACT(A2, C2))

Or

=IF(AND(EXACT(A2,B2), EXACT(A2, C2)),"Exactly equal", "Not equal")

Come nell’esempio precedente, la prima formula fornisce valori VERO e FALSO, mentre la seconda visualizza i vostri testi per le corrispondenze e le differenze:
Confrontare più stringhe con esattezza, comprese le maiuscole e le minuscole

Confrontare un intervallo di celle con una cella campione

Gli esempi seguenti mostrano come potete verificare che tutte le celle di un dato intervallo contengono lo stesso testo di una cella campione.

Formula insensibile alle maiuscole e alle minuscole per confrontare le celle con un testo campione

Se il caso dei caratteri non ha molta importanza, potete usare la seguente formula per confrontare le celle con un campione:

ROWS(range)*COLUMNS(range)=COUNTIF(range, cella campione)

Nella prova logica della funzione IF, confrontate due numeri:

  • Il numero totale di celle in un intervallo specificato (il numero di righe moltiplicato per il numero di colonne), e
  • Il numero di celle contenenti lo stesso valore della cella campione (restituito dalla funzione COUNTIF).

Assumendo che il testo di esempio sia in C2 e che le stringhe da confrontare siano nell’intervallo A2:B6, la formula è la seguente:

=ROWS(A2:B6)*COLUMNS(A2:B6)=COUNTIF(A2:B6,C2)

Per rendere i risultati più user-friendly, cioè produrre qualcosa come “Tutti corrispondono” e “Non tutti corrispondono” invece di VERO e FALSO, usa la funzione IF come abbiamo fatto negli esempi precedenti:

=IF(ROWS(A2:B6)*COLUMNS(A2:B6)=COUNTIF(A2:B6,C2),"All match", "Not all match")

Formula insensibile alle maiuscole per confrontare le celle con un testo campione

Come mostrato nello screenshot sopra, la formula si adatta perfettamente a un intervallo di stringhe di testo, ma può essere usata anche per confrontare numeri e date.

Formula sensibile alle maiuscole e alle minuscole per confrontare le stringhe con un testo campione

Se il caso dei caratteri fa differenza, potete confrontare le stringhe con il testo campione usando le seguenti formule di matrice.

IF(ROWS(range)*COLUMNS(range)=SUM(–EXACT(sample_cell, range)), “text_if_match”, “text_if_not match”)

Con l’intervallo sorgente che risiede in A2:B6 e il testo di esempio in C2, la formula assume la seguente forma:

=IF(ROWS(A2:B6)*COLUMNS(A2:B6)=SUM(--EXACT(C2, A2:B6)), "All match", "Not all match")

A differenza delle formule regolari di Excel, le formule di matrice si completano premendo Ctrl + Shift + Invio. Se inserita correttamente, Excel racchiude la formula di matrice tra {bretelle graffe}, come mostrato nello screenshot:
Formula sensibile alle maiuscole per confrontare le stringhe con un testo campione

Come confrontare due celle per lunghezza di stringa

A volte potresti voler controllare se le stringhe di testo in ogni riga contengono un numero uguale di caratteri. La formula per questo compito è molto semplice. Prima si ottiene la lunghezza della stringa di due celle usando la funzione LEN, e poi si confrontano i numeri.

Supponendo che le stringhe da confrontare siano nelle celle A2 e B2, usate una delle seguenti formule:

=LEN(A2)=LEN(B2)

Oppure

=IF(LEN(A2)=LEN(B2), "Equal", "Not equal")

Come già sapete, la prima formula restituisce valori booleani VERO o FALSO, mentre la seconda formula produce i vostri risultati:

Confronto di due celle per lunghezza di stringa

Come dimostrato nello screenshot qui sopra, le formule funzionano sia per stringhe di testo che per numeri.

Suggerimento. Se due stringhe apparentemente uguali restituiscono lunghezze diverse, molto probabilmente il problema è negli spazi iniziali o finali in una o entrambe le celle. In questo caso, rimuovi gli spazi extra usando la funzione TRIM. La spiegazione dettagliata e gli esempi di formula possono essere trovati qui: Come tagliare gli spazi in Excel.

Confronta due celle per occorrenze di un carattere specifico

Questo è l’ultimo esempio nel nostro tutorial Excel Confronta stringhe, e mostra una soluzione per un compito piuttosto specifico. Supponiamo che abbiate 2 colonne di stringhe di testo che contengono un carattere importante per voi. Il vostro obiettivo è controllare se due celle in ogni riga contengono lo stesso numero di occorrenze di un dato carattere.

Per rendere le cose più chiare, considerate il seguente esempio. Diciamo che avete due liste di ordini spediti (colonna B) e ricevuti (colonna C). Ogni riga contiene ordini per un articolo specifico, il cui identificatore unico è incluso in tutti gli ID degli ordini ed è elencato nella stessa riga nella colonna A (vedi lo screenshot qui sotto). Vuoi assicurarti che ogni riga contenga un numero uguale di articoli spediti e ricevuti con quell’ID specifico.

Per risolvere questo problema, scrivi una formula con la seguente logica.

  • Prima di tutto, sostituisci l’identificatore unico con niente usando la funzione SUBSTITUTE:

    SUBSTITUTE(A1, character_to_count,"")

  • Poi, calcola quante volte l’identificatore unico appare in ogni cella. Per questo, prendete la lunghezza della stringa senza l’identificatore unico e sottraetela dalla lunghezza totale della stringa. Questa parte deve essere scritta per la cella 1 e la cella 2 individualmente, per esempio:

    LEN(cell 1) - LEN(SUBSTITUTE(cell 1, character_to_count, ""))
    e
    LEN(cell 2) - LEN(SUBSTITUTE(cell 2, character_to_count, ""))

  • Infine, si confrontano questi 2 numeri mettendo il segno di uguaglianza (=) tra le parti precedenti.
LEN(cella 1) – LEN(SUBSTITUTE(cella 1, character_to_count, “”))=
LEN(cella 2) – LEN(SUBSTITUTE(cella 2, character_to_count, “”))

Nel nostro esempio, l’identificatore unico è in A2, e le stringhe da confrontare sono nelle celle B2 e C2. Quindi, la formula completa è la seguente:

=LEN(B2)-LEN(SUBSTITUTE(B2,$A2,""))=LEN(C2)-LEN(SUBSTITUTE(C2,$A2,""))

La formula restituisce VERO se le celle B2 e C2 contengono un numero uguale di occorrenze del carattere in A2, FALSO altrimenti. Per rendere i risultati più significativi per i vostri utenti, potete incorporare la formula nella funzione IF:

=IF(LEN(B2)-LEN(SUBSTITUTE(B2, $A2,""))=LEN(C2)-LEN(SUBSTITUTE(C2, $A2,"")), "Equal", "Not equal")

Confronta le occorrenze di un carattere specifico in due celle

Come potete vedere nello screenshot qui sopra, la formula funziona perfettamente nonostante un paio di complicazioni aggiuntive:

  • Il carattere da contare (identificatore unico) può apparire ovunque in una stringa di testo.
  • Le stringhe contengono un numero variabile di caratteri e diversi separatori come punto e virgola, virgola o spazio.

Ecco come si confrontano le stringhe in Excel. Per dare un’occhiata più da vicino alle formule discusse in questo tutorial, siete invitati a scaricare Excel Compare Strings Worksheet. Ti ringrazio per aver letto e spero di vederti sul nostro blog la prossima settimana.

Tu potresti anche essere interessato a

  • Confrontare due colonne in Excel per corrispondenze e differenze
  • Come confrontare due fogli di lavoro Excel per differenze
  • Come usare l’operatore logico per confrontare numeri
  • 4 modi per fare un vlookup sensibile alle maiuscole in Excel

Lascia un commento

Il tuo indirizzo email non sarà pubblicato.