www.valterborsato.it

Confrontare tabelle di Excel. Applicare la Funzione CONFRONTA e la Formattazione condizionale

Spesso, lavorando con Excel, ci si trova di fronte a tabelle che contengono dati relativi a prodotti, anagrafiche o altre informazioni che fanno riferimento a periodi, categorie o situazioni diverse.
In questi casi, può essere necessario confrontare i valori presenti in una tabella con quelli di un'altra, per identificare eventuali corrispondenze o differenze. Questo processo di confronto tra tabelle, che nel linguaggio comune è spesso definito con i termini "mecciare" o "matchare", rappresenta un'operazione fondamentale per chi lavora con grandi quantità di dati.
Esistono diversi approcci per effettuare questi confronti in Excel. Uno dei metodi più immediati e semplici è l'utilizzo di funzioni predefinite, che permettono di confrontare direttamente i valori delle celle di due tabelle.
Tra queste, la funzione CONFRONTA risulta particolarmente utile, in quanto consente di verificare se un determinato valore presente in una tabella ha un corrispondente in un'altra tabella, restituendo la posizione relativa del valore confrontato. Questo tipo di funzione offre un meccanismo rapido per effettuare un matching di valori tra insiemi di dati anche molto ampi.
Un ulteriore strumento a disposizione degli utenti di Excel è la Formattazione Condizionale, che permette di evidenziare visivamente le differenze o le corrispondenze tra le tabelle.
Applicando questa tecnica, è possibile colorare automaticamente le celle contenenti valori presenti in una tabella ma assenti nell’altra, oppure viceversa. Questo tipo di formattazione è particolarmente utile in situazioni in cui si lavora con grandi quantità di dati, poiché fornisce un riscontro immediato delle discrepanze, rendendo il confronto più intuitivo e immediato.
Per utenti più esperti o per chi desidera automatizzare il processo di confronto tra tabelle, è possibile ricorrere alla programmazione con VBA (Visual Basic for Applications), che permette di scrivere macro in grado di eseguire confronti complessi, personalizzati e automatizzati. Questo approccio richiede competenze di programmazione, ma offre una flessibilità e una potenza maggiore rispetto ai metodi tradizionali, consentendo di gestire situazioni in cui le funzioni integrate di Excel o la formattazione condizionale potrebbero non essere sufficienti.

In questa sezione del sito, viene considerato lìutilizzo della funzione CONFRONTA e della Formattazione Condizionale, proponendo un esempio pratico di confronto tra due tabelle, con l'obiettivo di individuare quali valori sono presenti in entrambe e quali invece sono univoci in una delle due.

Confrontare due tabelle con la Funzione CONFRONTA oppure CONFRONTA.X

Sebbene la funzione CONFRONTA e la sua variante CONFRONTA.X siano state già trattate in un'altra sezione del sito, prima di procedere con un esempio pratico di confronto tra tabelle, è fondamentale esaminare attentamente la sintassi della funzione CONFRONTA. Questa analisi preliminare è essenziale per comprendere a fondo come impostare correttamente la funzione e utilizzarla in modo efficace nel contesto di confronto dei dati.

Sintassi della Funzione CONFRONTA

=CONFRONTA(valore; matrice; [corrisp])
Nella quale:
valore
, rappresenta il Valore che si vuole cercare all'interno della matrice.
matrice, rappresenta l'intervallo di celle all'interno delle quali si vuole rilevare la presenza del valore.
corrisp, (argomento facoltativo) definisce il modo in cui Excel deve confrontare il valore con i dati contenuti in matrice.
0 = corrispondenza esatta. Trova il primo dato esattamente uguale al valore.
1 = la Funzione trova il valore più grande che è inferiore o uguale al valore.
-1 = la Funzione trova il valore più piccolo che è maggiore o uguale al valore.
Attenzione. corrisp, è un argomento facoltativo. Qualora non venisse impostato per default la ricerca sarà uguale a 1 (trova il valore più grande che è inferiore o uguale a valore)

Esempio su come confrontare due diverse tabelle

Nell'esempio raffigurato nella sottostante immagine, vengono messe a confronto due tabelle contenenti l'elenco dei dipendenti di due diversi anni.
Si vuole evidenziare nella seconda tabella (2020) i valori che non erano presenti nel precedente anno.
Allo scopo viene applicata la Funzione CONFRONTA.

Nella Cella H3 è inserita la seguente Funzione =CONFRONTA(E3;$A$3:$A$30;0).
Nella Quale E3 rappresenta il primo valore da confrontare nella tabella "dipendenti 2019" (Per un corretto confronto si fa riferimento al numero di matricola del dipendente e non al nome del dipendente);
$A$3:$A$30 rappresenta la matrice nella quale cercare il valore E3; ed infine 0 imposta la ricerca come esatta.
La Funzione CONFRONTA restituisce come risultato la posizione dei valori della colonna E nella matrice $A$3:$A$30
Nel caso specifico dell'esempio, il primo nominativo (Vighini) si trova in posizione 2 e i successivi (Merlini e Crespelli) nella posizione 3 e 5.
Nel caso del quarto nominativo la Funzione restituisce il codice di errore #N/D poichè questo nominativo non è presente nella prima tabella.

Come confrontare due tabelle di Excel. Applicare la Funzione CONFRONTA per confrontare due tabelle.

Nel confronto fra due tabelle, è ovviamente possibile migliorare la restituzione del risultato, sostituendo codici di errore e numeri con delle stringhe testo che notificano la presenza o meno del valore nella prima tabella.
Nella successiva immagine viene proposta la correzione nidificando la Funzione CONFRONTA, all'interno di una Funzione logica SE e di una Funzione SE.ERRORE
La Funzione SE, come test logico, verifica che i valori restituiti (relativi alla posizione nella matrice) siano superiori a zero. Qualora questo test risultasse vero, il numero viene sostituito dalla stringa "valore presente".
Inoltre, alla formula, viene anteposta la Funzione SE.ERRORE per eliminare il codice di errore #N/D che veniva restituito se nel confronto fra le due tabelle i codici di matricola presenti in tabella dipendenti 2020 non erano presente in tabella dipendenti 2019.
La Formula inserita nella cella H3 è la seguente:
=SE.ERRORE(SE(CONFRONTA(E3;$A$3:$A$30;0)>0;"valore presente");"NON PRESENTE").
:: Nella colonna H, è stata impostata una formattazione condizione per verificare se il valore è uguale a "NON PRESENTE"
se questa condizione risultasse vera la cella viene colorata in testo rosso scuro si sfondo rosso chiaro.

In maniera del tutto analoga, l'esercizio di confronto fra le due tabelle dati, poteva essere risolto anche applicando la nuova Funzione CONFRONTA.X
Questa nuova Funzione può a tutti gli effetti essere considerata uno sviluppo della "vecchia" Funzione CONFRONTA.
Anche la Funzione CONFRONTA.X ricerca un elemento specifico in una matrice e restituisce la posizione relativa dell'elemento.
L'elemento innovativo di CONFRONTA.X è che se non viene definito il terzo argomento della funzione (facoltativo) la modalità di comparazione che viene applicata è una ricerca di corrispondenza esatta! Inoltre, nel caso di una ricerca approssimativa, CONFRONTA.X supporta anche valori non disposti in ordine crescente o decrescente.


 Come confrontare due tabelle di Excel. Applicare la Funzione CONFRONTA per confrontare due tabelle. 

Supportare il confronto di valori fra due tabelle con la formattazione condizionale 

Con la Formattazione condizionale è possibile evidenziare quali valori presenti nella tabella "dipendenti 2020" sono, o non sono, presenti nella tabella "dipendenti 2019".
Ovviamente questo "match" di confronto dati potrebbe essere impostato anche dalla prima tabella alla seconda tabella.
In questo caso è necessario impostare una nuova regola di formattazione condizionale, attraverso l'impostazione di una una Funzione logica CONTA.SE 

Per procedere con la formattazione:
- selezionare l'intervallo di celle da E3:E30 (i numeri matricola tabella anno 2020)
- Scheda Principale HOME cliccare sul pulsante Formattazione condizionale e scegliere l'opzione Nuova Regola...
-
Si apre la Finestra di dialogo Modifica regola di formattazione cliccare su Utilizza una formula per determinare le celle da formattare
-
Nella seconda parte della finestra di dialogo inserire la Funzione =CONTA.SE($A$3:$A$30;E3)=0
-
Ultimo passaggio, nel pulsante "Nessun formato impostato" cliccare e scegliere quale colore sfondo o colore testo attribuire alla formattazione condizionale qualora il risultato della Funzione fosse uguale a VERO.
Una volta impostata la formattazione (come nell'immagine sottostante) comparirà nel pulsante il formato colore che è stato scelto e che verrà applicato.
Cliccare ok per confermare l'inserimento della formattazione.
Quale risultato dell'impostazione di questa formattazione condizionale tutte i valori nella colonna E che non trovano riscontro nella colonna A vengono colorati in giallo.

Come confrontare due tabelle di Excel. Applicare la formattazione condizionale per confrontare due tabelle.

Indice Generale Argomenti: EXCEL

[Valter Borsato: marzo - 2020 | Ultimo aggiornamento 24/06/2023]