KutoolsforOffice — Un'unica soluzione, cinque potenti strumenti.Ottenere di più con meno sforzo.

Come trovare i valori comuni presenti in tre colonne di Excel?

AutoreXiaoyang Data di modifica

Lavorare con i dati in Excel spesso richiede il confronto tra elenchi per individuare voci condivise o duplicate. Sebbene sia comune confrontare due colonne per trovare valori in comune, in alcuni casi è necessario identificare quali elementi compaiono contemporaneamente in tre colonne distinte. Ad esempio, durante la consolidazione di dati provenienti da sondaggi, l’unione di registrazioni di vendita o l’analisi di duplicati su più elenchi, è essenziale estrarre con precisione l’insieme degli elementi presenti in tutte e tre le colonne, come mostrato nell’immagine seguente. Questo articolo ti presenta diversi metodi pratici per risolvere questo problema in Excel, permettendoti di individuare in modo efficiente e affidabile i valori comuni tra tre colonne, sia che tu preferisca usare formule che VBA.

trova valori comuni in 3 colonne

Trova i valori comuni in 3 colonne con formule matriciali

Macro VBA per estrarre i valori presenti in tutte e tre le colonne


freccia blu bolla destra Trova i valori comuni in 3 colonne con formule matriciali

Per trovare ed estrarre i valori comuni tra tre colonne, puoi utilizzare formule matriciali appositamente progettate per individuare gli elementi presenti in tutti e tre gli intervalli selezionati. Questo approccio è ideale se preferisci evitare componenti aggiuntivi di Excel o strumenti esterni.

Inserisci questa formula matriciale in una cella vuota in cui desideri visualizzare il primo valore comune:

=LOOKUP("zzz",CHOOSE({1,2},"",INDEX(A$2:A$10,MATCH(0,COUNTIF(E$1:E1,A$2:A$10)+IF(IF(COUNTIF(B$2:B$8,A$2:A$10)>0,1,0)+IF(COUNTIF(C$2:C$9,A$2:A$10)>0,1,0)=2,0,1),0))))

Come utilizzare questa formula matriciale:

  • Dopo aver inserito la formula nella cella selezionata, premi Maiusc + Ctrl + Invio (non semplicemente Invio). Excel racchiuderà automaticamente la formula tra parentesi graffe per indicare che si tratta di una formula matriciale.
  • Trascina la formula lungo la colonna finché non compaiono celle vuote: in questo modo verranno elencati tutti i valori condivisi dalle tre colonne, e le celle vuote indicheranno l’assenza di ulteriori corrispondenze.

Trova valori comuni in 3 colonne con formula di matrice

Note e spiegazioni dei parametri:

  1. Se preferisci un’altra formula matriciale, anche questa restituisce tutti i valori univoci presenti nelle tre colonne:
    =INDEX($A$2:$A$10, MATCH(0, COUNTIF($E$1:E1, $A$2:$A$10)+IF(IF(COUNTIF($B$2:$B$8, $A$2:$A$10)>0,1,0)+IF(COUNTIF($C$2:$C$9, $A$2:$A$10)>0,1,0)=2,0,1),0))
    Ricorda nuovamente di premere Maiusc + Ctrl + Invio dopo aver digitato o incollato la formula.
  2. Nelle seguenti formule:
    • A2:A10, B2:B8 e C2:C9 sono gli intervalli nelle tre colonne che desideri confrontare.
    • E1 si riferisce alla cella immediatamente sopra il punto in cui inserisci la tua formula (in base alla logica di esclusione). Modifica i riferimenti di cella in modo che corrispondano al tuo effettivo intervallo e alla posizione in cui desideri visualizzare i risultati.
  3. Questi metodi funzionano bene con set di dati di dimensioni moderate, ma possono rallentare con volumi molto elevati a causa dell’elevato carico computazionale delle formule matriciali.
  4. Fai attenzione a non modificare l’intervallo di origine a metà operazione, poiché potrebbe causare risultati imprecisi o errori nella formula.
  5. Se il risultato include righe vuote, significa che sono stati estratti tutti i valori comuni e le celle rimanenti non contengono ulteriori intersezioni.
uno screenshot di kutools for excel ai

Sblocca la magia di Excel con KUTOOLS AI

  • Esecuzione intelligente: Esegui operazioni sulle celle, analizza i dati e crea grafici, il tutto con comandi semplici e intuitivi.
  • Formule personalizzate: crea formule su misura per ottimizzare i tuoi flussi di lavoro.
  • Codifica VBA: Scrivi e implementa codice VBA in modo semplice e immediato.
  • Interpretazione delle formule: Comprendi con facilità anche le formule più complesse.
  • Traduzione del testo: Superate le barriere linguistiche direttamente nei vostri fogli di calcolo.
Potenzia le tue capacità in Excel con strumenti basati sull’intelligenza artificiale.Scarica orae scopri un’efficienza mai provata prima!

Macro VBA per estrarre i valori presenti in tutte e tre le colonne

Se preferisci un approccio automatizzato che non richieda di inserire o copiare formule complesse, puoi sfruttare VBA in Excel per analizzare i tuoi dati e visualizzare esclusivamente i valori presenti in ciascuna delle tre colonne. Questo metodo si rivela particolarmente efficace con set di dati molto grandi o quando lavori con intervalli dinamici, grazie alla capacità di VBA di gestire in modo più efficiente attività ripetitive e criteri personalizzati.

1. Fai clic su Sviluppo > Visual Basicper aprire l’editor VBA (se la scheda)Sviluppo non è visibile, puoi abilitarla tramite File > Opzioni > Personalizza Barra multifunzione).

2. Nell’editor VBA, fai clic su Inserisci > Modulo per creare un nuovo modulo. Incolla quindi il codice riportato di seguito nella finestra del modulo:

Sub FindCommonValuesThreeColumns()
    Dim dict1 As Object
    Dim dict2 As Object
    Dim dict3 As Object
    Dim resultDict As Object
    Dim rngA As Range
    Dim rngB As Range
    Dim rngC As Range
    Dim cell As Range
    Dim outputRow As Long
    Dim key As Variant
    
    On Error Resume Next
    
    Set dict1 = CreateObject("Scripting.Dictionary")
    Set dict2 = CreateObject("Scripting.Dictionary")
    Set dict3 = CreateObject("Scripting.Dictionary")
    Set resultDict = CreateObject("Scripting.Dictionary")

    ' Prompt the user to select the three column ranges
    Set rngA = Application.InputBox("Select the first column range", "KutoolsforExcel", Selection.Address, Type:=8)
    Set rngB = Application.InputBox("Select the second column range", "KutoolsforExcel", Selection.Address, Type:=8)
    Set rngC = Application.InputBox("Select the third column range", "KutoolsforExcel", Selection.Address, Type:=8)

    ' Store all unique values from each column into corresponding dictionaries
    For Each cell In rngA
        If Not dict1.exists(cell.Value) And cell.Value <> "" Then
            dict1.Add cell.Value, 1
        End If
    Next

    For Each cell In rngB
        If Not dict2.exists(cell.Value) And cell.Value <> "" Then
            dict2.Add cell.Value, 1
        End If
    Next

    For Each cell In rngC
        If Not dict3.exists(cell.Value) And cell.Value <> "" Then
            dict3.Add cell.Value, 1
        End If
    Next

    ' Check which values exist in all three dictionaries
    For Each key In dict1.keys
        If dict2.exists(key) And dict3.exists(key) Then
            resultDict.Add key, 1
        End If
    Next

    ' Output result to next empty column on the active sheet
    outputRow = 1
    For Each key In resultDict.keys
        Cells(outputRow, Columns.Count).End(xlToLeft).Offset(0, 1).Value = key
        outputRow = outputRow + 1
    Next

    MsgBox "Common values extracted next to your data.", vbInformation, "KutoolsforExcel"
End Sub

3. Nella finestra VBA, con il modulo selezionato, premi F5 oppure fai clic sul pulsante Esegui (▶) per eseguire il codice. Ti verrà chiesto, in sequenza, di selezionare ciascuno dei tre intervalli di colonne che desideri confrontare. Utilizza il mouse per evidenziare le celle appropriate a ogni richiesta.

4. La macro elaborerà le tue selezioni e mostrerà tutti i valori presenti nelle tre colonne nella prima colonna vuota a destra del tuo set di dati corrente, a partire dalla prima riga.

Questo metodo si rivela particolarmente efficiente quando si lavora con set di dati grandi o dinamici e può essere facilmente esteso a quattro o più colonne replicando la logica basata sui dizionari. Ricorda sempre di salvare la cartella di lavoro prima di eseguire le macro: in caso di ripristino, infatti, le modifiche non salvate non potranno essere annullate.

Migliori Strumenti per la Produttività in Office

🤖KUTOOLS AI Assistente: Rivoluziona Analisi dei dati in base a:Esecuzione Intelligente   |  Genera Codice|  Crea formule personalizzate  |  Analizza Dati e Genera Grafici|  Richiama Funzioni avanzate
Funzionalità Popolari:Trova, Evidenzia o Contrassegna Duplicati   |  Elimina righe vuote   |  Combinare Colonne o Celle senza Perdere Dati   |   Arrotondamento senza usare la formula...
Super RICERCA.VERT:VLookup con Criteri Multipli  |  VLookup con Valori Multipli  |   VLookup tra Fogli Multipli   |   Corrispondenza approssimativa....
Elenco a discesa avanzato:Crea Rapidamente un Elenco a Discesa   |  Elenco a Discesa Dipendente   |  Elenco a Discesa con Selezione Multipla....
Gestione Colonne:Aggiungi un Numero Specifico di Colonne|Sposta Colonne|Attiva/Disattiva lo Stato di Visibilità delle Colonne Nascoste|Confronta Intervalli e Colonne...
Funzionalità in Evidenza:Attenzione della griglia   |  Visualizzazione Design   |Barra delle formule avanzata   | Gestione Cartelle di Lavoro e Fogli   |  Biblioteca di risorse(Testo Automatico)|  Selettore di Date   |  Unisci fogli di lavoro  |  Crittografa/Decrittografa celle   | Invia Email da Lista   |  Super Filtri   |   Filtro speciale(Filtra celle con testo in grassetto/corsivo/barrato...) ...
Principali Set di Strumenti 15:12 Strumentiper il Testo(Aggiungi testo,Elimina Caratteri Specifici, ...)|   50+Tipidi Grafico(Diagramma di Gantt, ...)|   40+ Formule Pratiche(Calcola l'età in base alla data di nascita, ...)|   19 Strumentidi Inserimento(Inserisci Codice QR,Inserisci Immagine dal Percorso, ...)|   12 Strumentidi Conversione(Converti in parole,Conversione del tasso di cambio, ...)|   7 StrumentiUnisci e Dividi(Unione avanzata righe,Dividi celle, ...)|... e molto altro
Usa Kutools nella tua lingua preferita – supporta inglese, spagnolo, tedesco, francese, cinese e 40+ altre!

Potenzia le tue competenze in Excel con Kutools per Excel e sperimenta un’efficienza mai vista prima.Kutools per Excel offre oltre 300 funzionalità avanzate per aumentare la produttività e Risparmia tempo.Clicca qui per ottenere la funzionalità di cui hai più bisogno...


Office Tab Porta l'interfaccia a schede in Office e rende il tuo lavoro molto più semplice

  • Abilita la modifica e la lettura a schede in Word, Excel, PowerPoint, Publisher, Access, Visio e Project.
  • Apri e crea più documenti in nuove schede all’interno della stessa finestra, invece che in finestre separate.
  • Aumenta la tua produttività del 50 % e risparmia centinaia di clic del mouse ogni giorno!

Tutti i componenti aggiuntivi di Kutools in un unico programma di installazione.

Kutools for Office è la suite che include componenti aggiuntivi per Excel, Word, Outlook e PowerPoint, oltre a Office Tab Pro: la soluzione ideale per i team che lavorano su diverse app di Office.

ExcelWordOutlookTabsPowerPoint
  • Suite completa— componenti aggiuntivi per Excel, Word, Outlook e PowerPoint + Office Tab Pro
  • Un unico programma di installazione, una sola licenza— configurazione in pochi minuti (pronto per MSI)
  • Funziona meglio insieme— produttività ottimizzata tra le app di Office
  • Prova gratuita di 30 giorni con tutte le funzionalità— nessuna registrazione, nessuna carta di credito
  • Miglior rapporto qualità-prezzo— risparmia rispetto all’acquisto dei singoli componenti aggiuntivi