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.
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.
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.
Indice Generale Argomenti: EXCEL
[Valter Borsato: marzo - 2020 | Ultimo aggiornamento 24/06/2023]