Skip to main content

Come filtrare automaticamente le righe in base al valore della cella in Excel?

Author: Xiaoyang Last Modified: 2025-08-06

In Excel, la funzione Filtro standard offre un modo rapido per filtrare i dati in base ai criteri che selezioni manualmente. Tuttavia, in alcuni flussi di lavoro, potresti volere che i tuoi dati si aggiornino automaticamente non appena inserisci un valore o una condizione in una cella specifica. Ad esempio, se desideri che il set di dati venga filtrato istantaneamente in base a una parola chiave o a un parametro che inserisci in un'altra cella, ciò va oltre le capacità di filtro native di Excel. Questo tipo di filtro dinamico o “filtro automatico” può aiutarti a semplificare il processo di revisione dei dati, ridurre il tempo speso per il filtraggio manuale e aumentare l'accuratezza legando direttamente le condizioni del filtro ai valori delle celle. Se stai cercando di implementare un meccanismo di questo tipo basato sull'input della cella, ci sono diverse soluzioni pratiche disponibili per ottenere questo risultato.

Filtrare automaticamente le righe in base al valore della cella con una soluzione basata su formule Excel

Filtrare automaticamente le righe in base al valore della cella inserito con il codice VBA


Filtrare automaticamente le righe in base al valore della cella con una soluzione basata su formule Excel

Se preferisci un approccio senza macro o devi evitare di utilizzare VBA a causa delle impostazioni di sicurezza o preoccupazioni sulla collaborazione, puoi creare un effetto "filtro automatico" utilizzando una combinazione di formule e funzionalità di filtro integrate in Excel. Questa soluzione funziona bene per Microsoft 365, Microsoft 2019 e versioni successive che supportano funzioni di array dinamici come FILTER. È particolarmente adatta per essere condivisa con colleghi che potrebbero non avere le macro abilitate, o per modelli leggeri dove è necessaria l'automazione senza installazione.

1. Seleziona una cella vuota dove vuoi che inizino i risultati filtrati (ad esempio, posiziona il cursore nella cella G2).

=FILTER(A2:C20, (A2:A20=E1) * (B2:B20=E2), "No match")

2. Dopo aver inserito la formula in G2, premi Invio. Il set di dati filtrato apparirà in un intervallo di spillaggio iniziando dalla cella G2. Quando cambi i valori in E1 o E2, l'elenco filtrato si aggiorna istantaneamente.

Questo esempio di formula presuppone che i tuoi dati principali siano in A2:C20 e che i criteri di filtro siano inseriti in E1 (corrispondente alla colonna A) e E2 (corrispondente alla colonna B). Se vuoi filtrare solo per una colonna, puoi semplificare di conseguenza la condizione logica. Il messaggio "Nessuna corrispondenza" appare se nessuna riga corrisponde ai criteri inseriti.

Suggerimento: La funzione FILTER è disponibile in Microsoft 365 e in alcune versioni di Microsoft 19+. Per le versioni precedenti di Excel, il filtraggio dinamico tramite formule è meno diretto, e potresti voler esplorare colonne di supporto combinate con il filtro automatico tradizionale o funzionalità avanzate di filtro. Controlla la tua versione per assicurarti la compatibilità.

Quando utilizzi questa soluzione, i risultati occupano una nuova area sul tuo foglio di lavoro, il che aiuta a preservare i tuoi dati grezzi. Tuttavia, il dataset originale rimane inalterato—i filtri si applicano solo ai risultati visualizzati, non allo stato di visualizzazione dei dati di origine.

Errori potenziali: Se vedi un errore #NOME? o #SPILL!, verifica di stare usando una versione compatibile di Excel e che non ci siano celle unite nell'intervallo dei risultati. Inoltre, evita di inserire altri dati nell'area di spillaggio della formula per prevenire blocchi.


Filtrare automaticamente le righe in base al valore della cella inserito con il codice VBA

Supponiamo che tu stia lavorando con un set di dati e voglia filtrare automaticamente i record in base ai criteri che digiti in celle specifiche. Ad esempio, quando inserisci le tue condizioni desiderate nella cella E1 ed E2, i dati sul foglio di lavoro vengono filtrati automaticamente per corrispondere a quei valori, come illustrato di seguito:

a screenshot of filtering rows based on entered value in a cell

Per automatizzare il filtraggio in questo modo, puoi impostare una semplice soluzione VBA. Questo metodo si attiva ogni volta che aggiorni il valore nelle celle filtro designate. È particolarmente utile per cruscotti, report interattivi o modelli nei quali gli utenti si aspettano un filtraggio dinamico da celle di parametri centrali.

1. Vai al foglio di lavoro dove vuoi automatizzare il filtraggio delle righe in base agli input inseriti nelle celle.

2. Fai clic con il tasto destro sul tab del foglio nella parte inferiore della finestra di Excel e scegli Visualizza Codice dal menu contestuale. Nella finestra di Microsoft Visual Basic for Applications che appare, incolla il seguente codice VBA nell'ampia area vuota (comunemente indicata come finestra del codice o modulo del foglio), come mostrato qui:

Codice VBA: Filtrare automaticamente i dati in base al valore della cella inserito

Private Sub Worksheet_Change(ByVal Target As Range)
'Updateby Extendoffice 20160606
   If Target.Address = Range("E2").Address Then
       Range("A1:C20").CurrentRegion.AdvancedFilter Action:=xlFilterInPlace, CriteriaRange:=Range("E1:E2")
   End If
End Sub

a screenshot showing how to use the VBA code

Nota: In questo codice VBA, A1:C20 si riferisce all'intervallo di dati a cui applicare il filtro. E2 è la cella in cui digiti il valore del filtro (i tuoi criteri target), e E1:E2 sono le celle usate come condizioni di filtro. Puoi modificare questi intervalli come necessario—assicurati che riflettano accuratamente dove sono situati i tuoi dati e i criteri di filtro per la struttura specifica del tuo foglio di lavoro. Inoltre, è meglio evitare celle unite e assicurarsi che l'intervallo dei dati contenga intestazioni se necessario per un filtraggio accurato.

3. Ora, inserisci o modifica i tuoi criteri di filtro nella cella E1 e/o E2. Una volta premuto Invio, il codice VBA viene eseguito automaticamente e filtra l'intervallo di dati designato mostrando solo le righe che corrispondono ai tuoi criteri di input.

Se il filtro non sembra funzionare immediatamente dopo aver inserito un valore, assicurati che la funzionalità delle macro sia abilitata nel tuo workbook, e verifica che gli intervalli nel codice VBA corrispondano correttamente al layout del tuo foglio di lavoro attuale. In scenari multi-utente, ricorda agli altri che le macro devono essere abilitate affinché questa funzionalità funzioni correttamente.

Questo metodo VBA è particolarmente vantaggioso per dashboard guidati da parametri dinamici, modelli interattivi per l'inserimento dei dati o qualsiasi scenario in cui l'applicazione manuale ripetuta dei criteri di filtro sarebbe inefficiente. Tuttavia, tieni presente che gli utenti potrebbero incontrare problemi se disabilitano le macro, e le soluzioni basate su VBA sono specifiche per il file in cui è stato aggiunto il codice.

Se il tuo scenario richiede cambi frequenti di criteri da parte di più utenti che potrebbero avere impostazioni di sicurezza di Excel variabili, o se hai intenzione di condividere ampiamente il tuo file, potresti voler considerare alternative basate su formule o componenti aggiuntivi di Excel.


Demo: Filtrare automaticamente le righe in base al valore della cella inserito con il codice VBA

 

Filtrare i dati in base a criteri multipli o altre condizioni specifiche, come per lunghezza del testo, distinzione tra maiuscole e minuscole, ecc.

Quando hai bisogno di eseguire operazioni di filtro più avanzate—come combinare diversi criteri di filtro, filtrare per la lunghezza del testo, sensibilità alle maiuscole/minuscole, o filtrare in base a periodi specifici—i filtri integrati di Excel potrebbero non essere sufficienti. In tali scenari, la funzione Super Filtri di Kutools per Excel offre un modo pratico per gestire facilmente e in modo efficiente requisiti di filtro complessi. Questa funzione ti aiuta a:

  • Applicare criteri multipli su più colonne; Filtrare i dati in base al numero di caratteri in una cella;
  • Filtrare per testo maiuscolo o minuscolo; Filtrare i dati in base all'anno, mese, giorno, settimana o trimestre

a screenshot of using Kutools for Excel to filter date by multiple criteria

Kutools per Excel: Dotato di oltre 300 componenti aggiuntivi pratici per Excel, prova gratuita completa per 30 giorni. Scarica e prova gratis ora!


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
Funzionalità popolari: Trova, evidenzia o identifica duplicati | Elimina righe vuote | Combina colonne o celle senza perdere dati | Arrotonda
Super RICERCA.VERT: Ricerca con criteri multipli    Ricerca 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 a selezione multipla….
Gestione colonne: Aggiungi un numero specifico di colonne | Sposta colonne | Cambia lo stato di 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 & Foglio di lavoro | Libreria AutoText | Selettore di data | Unisci dati | Crittografa/Decrittografa celle | Invia Email da elenco | Super Filtri | Filtro speciale (filtra grassetto/corsivo/barrato...)...
I15 migliori kit di strumenti:12 strumenti di testo (Aggiungi testo, Elimina Caratteri Specifici, ...) | Oltre50 tipi di grafici (Diagramma di Gantt, ...) | Oltre40 formule utili (Calcola l'età in base alla data di nascita, ...) |19 strumenti di inserimento (Inserisci codice QR, Inserisci immagine dal percorso, ...) |12 strumenti di conversione (Converti in parole, Conversione valuta, ...) |7 strumenti per unire & dividere (Unione avanzata righe, Dividi celle, ...) | ...e altro ancora
Usa Kutools nella lingua che preferisci – supporta Inglese, Spagnolo, Tedesco, Francese, Cinese e oltre40 altre!

Migliora le tue competenze su Excel con Kutools per Excel e sperimenta un nuovo livello di efficienza. 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 su Office, rendendo il tuo lavoro molto più semplice

  • Abilita la modifica a schede e la lettura 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 ti fa risparmiare centinaia di clic ogni giorno!