Skip to main content

Come filtrare i dati dalla selezione dell'elenco a discesa in Excel?

Author: Xiaoyang Last Modified: 2025-05-29

In Excel, molti di noi filtrano i dati utilizzando la funzione Filtro. Ma hai mai provato a filtrare i dati dalla selezione dell'elenco a discesa? Ad esempio, quando seleziono un elemento dall'elenco a discesa, voglio che le righe corrispondenti vengano filtrate come mostrato nello screenshot seguente. In questo articolo, parlerò di come filtrare i dati utilizzando un elenco a discesa in uno o due fogli di lavoro.

a screenshot of using drop-down list to filter data

Filtra i dati dalla selezione dell'elenco a discesa in un foglio di lavoro con formule di supporto

Filtra i dati dalla selezione dell'elenco a discesa in due fogli di lavoro con il codice VBA


Filtra i dati dalla selezione dell'elenco a discesa in un foglio di lavoro con formule di supporto

Per filtrare i dati dall'elenco a discesa, puoi creare alcune colonne con formule di supporto; segui i seguenti passaggi uno per uno:

1. Innanzitutto, inserisci l'elenco a discesa. Clicca su una cella dove vuoi inserire l'elenco a discesa, poi clicca su Dati > Convalida dati > Convalida dati, vedi screenshot:

a screenshot of enabling the Data Validation feature

2. Nella finestra Convalida dati apparsa, sotto la scheda Opzioni seleziona Tabella Unidimensionale dal menu a tendina Consenti e poi clicca sul pulsante a screenshot of the selection button per scegliere l'elenco di dati su cui desideri creare l'elenco a discesa, vedi screenshot:

a screenshot of configuring the Data Validation dialog box

3. Poi clicca sul pulsante OK, l'elenco a discesa viene inserito immediatamente e scegli un elemento dall'elenco a discesa, quindi inserisci questa formula: =ROWS($A$2:A2) (A2 è la prima cella all'interno della colonna che contiene il valore dell'elenco a discesa) nella cella D2, e trascina la maniglia di riempimento verso il basso per applicare questa formula alle celle, vedi screenshot:

a screenshot of using the ROWS function to create a helper column with sequence numbers

4. Continua inserendo questa formula: =IF(A2=$H$2,D2,"") nella cella E2, e poi trascina la maniglia di riempimento verso il basso per applicare questa formula, vedi screenshot:

Nota: Nella formula sopra: A2 è la prima cella all'interno della colonna che contiene il valore dell'elenco a discesa, H2 è la cella dove è posizionato l'elenco a discesa, D2 è la prima formula della colonna di supporto.

a screenshot of using formula to create the second helper column

5. Poi inserisci questa formula: =IFERROR(SMALL($E$2:$E$17,D2),"") nella cella F2, quindi trascina la maniglia di riempimento verso il basso fino alle celle per applicare questa formula, vedi screenshot:

Nota: Nella formula sopra: E2:E17 sono le celle della seconda formula di supporto, D2 è la prima cella della prima colonna della formula di supporto.

a screenshot of using formula to create the third helper column

6. Dopo aver inserito le colonne delle formule di supporto, dovresti esportare il risultato filtrato in un'altra posizione, applica questa formula: =IFERROR(INDEX($A$2:$C$17,$F2,COLUMNS($J$2:J2)),"") nella cella J2, e poi trascina la maniglia di riempimento da J2 a L2, e il primo record dei dati basato sull'elenco a discesa è stato estratto, vedi screenshot:

Nota: Nella formula sopra: A2:C17 sono i dati originali che vuoi filtrare, F2 è la terza colonna della formula di supporto, J2 è la cella dove vuoi esportare il risultato del filtro.

a screenshot of using formula to get the first filtered row based on the selection of the drop-down list

7. Poi continua a trascinare la maniglia di riempimento verso il basso fino alle celle per visualizzare tutti i record filtrati corrispondenti, vedi screenshot:

a screenshot shows all filtered results

8. Da ora in poi, quando selezioni un elemento dall'elenco a discesa, tutte le righe basate su questa selezione verranno filtrate immediatamente, vedi screenshot:

a screenshot of different filtered results based on the selection of the drop-down list

a screenshot of drop-down list collection of Kutools

Potenzia gli elenchi a discesa di Excel con le funzionalità avanzate di Kutools

Aumenta la tua produttività con le funzionalità avanzate degli elenchi a discesa di Kutools per Excel. Questo set di funzionalità va oltre le funzionalità di base di Excel per semplificare il tuo flusso di lavoro, tra cui:

  • Elenco a discesa multiselezione: Seleziona più voci simultaneamente per una gestione efficiente dei dati.
  • Elenco a discesa con caselle di controllo: Migliora l'interazione e la chiarezza all'interno dei tuoi fogli di calcolo.
  • Elenco a discesa dinamico: Si aggiorna automaticamente in base alle modifiche dei dati, garantendo precisione.
  • Elenco a discesa ricercabile: Trova rapidamente le voci necessarie, risparmiando tempo e riducendo lo stress.
Scarica subito per una prova gratuita di 30 giorni e trasforma la tua esperienza con Excel!

Filtra i dati dalla selezione dell'elenco a discesa in due fogli di lavoro con il codice VBA

Se la cella dell'elenco a discesa si trova nel Foglio1 e i dati filtrati nel Foglio2, quando si sceglie un elemento dall'elenco a discesa, un altro foglio verrà filtrato. Come potresti completare questa operazione in Excel?

Il seguente codice VBA potrebbe esserti utile, procedi come segue:

1. Fai clic destro sulla scheda del foglio che contiene la cella dell'elenco a discesa e scegli Visualizza Codice dal menu contestuale, nella finestra aperta Microsoft Visual Basic for Applications, copia e incolla il seguente codice nel Modulo vuoto:

Codice VBA: Filtra i dati dalla selezione dell'elenco a discesa in due fogli:

Private Sub Worksheet_Change(ByVal Target As Range)
'Updateby Extendoffice
    On Error Resume Next
    If Not Intersect(Range("A2"), Target) Is Nothing Then
        Application.EnableEvents = False
        If Range("A2").Value = "" Then
            Worksheets("Sheet2").ShowAllData
        Else
            Worksheets("Sheet2").Range("A2").AutoFilter 1, Range("A2").Value
        End If
        Application.EnableEvents = True
    End If
End Sub

Nota: Nel codice sopra: A2 è la cella che contiene l'elenco a discesa, e Foglio2 è il foglio di lavoro che contiene i dati che vuoi filtrare. Il numero 1 nello script: AutoFilter 1 è il numero della colonna su cui vuoi filtrare. Puoi modificarli secondo necessità.

a screenshot showing how to use the VBA code

2. Da ora in poi, quando selezioni un elemento dall'elenco a discesa nel Foglio1, i dati corrispondenti verranno filtrati nel Foglio2, vedi screenshot:

a screenshot showing the selection of the drop-down list and the corresponding filtered results


I migliori strumenti per la produttività in Office

🤖 Kutools AI Aide: Rivoluziona l'analisi dei dati grazie a: Esecuzione Intelligente | Genera Codice | Crea Formule Personalizzate | Analizza Dati e Genera Grafici | Richiama Funzioni avanzate di Kutools
Funzionalità popolari: Trova, evidenzia o contrassegna duplicati | Elimina righe vuote | Unisci colonne o celle senza perdere dati | Arrotonda...
Super RICERCA.VERT: Ricerca VERT con criteri multipli | Ricerca VERT con valori multipli | Ricerca su più fogli | Corrispondenza approssimativa...
Elenco a discesa avanzato: Crea rapidamente un elenco a discesa | Elenco a discesa dipendente | Elenco a discesa multi-selezione...
Gestione Colonne: Aggiungi un numero specifico di colonne | Sposta colonne | Attiva/disattiva la visibilità delle colonne nascoste | Confronta intervalli e colonne...
Funzionalità in evidenza: Attenzione della griglia | Visualizzazione di progettazione | Barra delle formule avanzata | Gestione Cartella di lavoro e Foglio di lavoro | Libreria AutoText | Selettore di data | Unisci dati | Crittografa/Decrittografa celle | Invia Email tramite elenco | Super Filtri | Filtro speciale (filtra grassetto/corsivo/barrato...) ...
Top15 set di strumenti:12 strumenti di testo (Aggiungi testo, Elimina Caratteri Specifici, ...) | Oltre50 tipi di grafici (Diagramma di Gantt, ...) | Oltre40 formule pratiche (Calcola l'età in base alla data di nascita, ...) |19 strumenti di inserimento (Inserisci codice QR, Inserisci Immagine da percorso, ...) |12 strumenti di conversione (Converti in parole, Conversione valuta, ...) |7 strumenti di unione e divisione (Unione avanzata righe, Dividi celle, ...) | ... e molto altro

Potenzia le tue competenze in Excel con Kutools per Excel e sperimenta un'efficienza mai vista prima. Kutools per Excel offre oltre300 funzionalità avanzate per aumentare la produttività e risparmiare tempo. Clicca qui per ottenere la funzione 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 della stessa finestra, invece che in nuove finestre.
  • Aumenta la tua produttività del50% e riduce centinaia di clic del mouse ogni giorno!