Come applicare il filtro automatico alle righe in base al valore contenuto in una cella specifica in Excel?
In Excel, la funzione **Filtro standard** offre un modo rapido per filtrare i dati in base a criteri selezionati manualmente. Tuttavia, in alcuni flussi di lavoro potrebbe essere utile aggiornare automaticamente i dati non appena si inserisce un valore o una condizione in una cella specifica. Ad esempio, se si desidera che il set di dati venga filtrato istantaneamente in base a una parola chiave o a un parametro immesso in un’altra cella, questa operazione supera le capacità native di Excel. Un filtro dinamico o “automatico” di questo tipo può semplificare notevolmente la revisione dei dati, ridurre il tempo speso nel filtraggio manuale e aumentare l’accuratezza collegando direttamente le condizioni di filtro ai valori delle celle. Se desideri implementare un meccanismo simile basato sull’input di una cella, esistono diverse soluzioni pratiche per ottenere il risultato desiderato.
Applica automaticamente il filtro alle righe in base al valore di una cella con una formula Excel
Applica automaticamente il filtro alle righe in base al valore immesso nella cella tramite codice VBA
Applica automaticamente il filtro alle righe in base al valore di una cella con una formula Excel
Se preferisci un approccio senza macro o se devi evitare l’uso di VBA a causa di impostazioni di sicurezza o esigenze collaborative, puoi ottenere un effetto di “filtro automatico” combinando formule e le funzionalità di filtraggio integrate in Excel. Questa soluzione funziona perfettamente con Microsoft 365, Microsoft 2019 e versioni successive che supportano funzioni matriciali dinamiche come FILTRO. È ideale per condividere file con colleghi che potrebbero non avere le macro abilitate o per creare modelli leggeri che richiedono automazione senza installazioni aggiuntive.
1. Seleziona una cella vuota in cui desideri far iniziare 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, premere Invio. Il set di dati filtrato apparirà in un intervallo dinamico a partire dalla cella G2. Non appena si modificano i valori in E1 o E2, l’elenco filtrato si aggiorna immediatamente.
Questo esempio di formula presuppone che i dati principali siano in A2:C20 e che le condizioni di filtro siano inserite in E1 (corrispondente alla colonna A) e E2 (corrispondente alla colonna B). Se si desidera filtrare in base a una sola colonna, è possibile semplificare di conseguenza la condizione logica. Il messaggio «Nessuna corrispondenza» viene visualizzato se nessuna riga soddisfa i criteri inseriti.
Suggerimento: La funzione FILTRO è disponibile in Microsoft 365 e in alcune versioni di Microsoft Excel 2019+. Nelle versioni precedenti di Excel, il filtraggio dinamico tramite formule risulta meno immediato e potrebbe essere necessario ricorrere a colonne di supporto abbinate al filtro automatico tradizionale o alle funzionalità di filtro avanzato. Verifica la compatibilità della tua versione.
Quando si utilizza questa soluzione, i risultati vengono collocati in una nuova area del foglio di lavoro, preservando così i dati originali. Il set di dati originale rimane infatti invariato: i filtri si applicano esclusivamente ai risultati visualizzati e non influiscono sullo stato di visualizzazione dei Dati di origine.
Errori possibili: Se compare un errore #NOME? o #TRABOC!, assicurati di utilizzare una versione compatibile di Excel e che non siano presenti celle unite nell’intervallo dei risultati. Evita inoltre di inserire altri dati nell’area di espansione della formula per prevenire blocchi.
Applica automaticamente il filtro alle righe in base al valore immesso nella cella tramite codice VBA
Immagina di lavorare con un set di dati e di voler filtrare automaticamente i record in base ai criteri inseriti in celle specifiche. Ad esempio, non appena digiti le condizioni desiderate nelle celle E1 ed E2, i dati nel foglio di lavoro vengono filtrati in tempo reale per corrispondere esattamente a quei valori, come mostrato di seguito:

Per automatizzare il filtraggio in questo modo, puoi configurare una semplice soluzione VBA. Questo metodo si attiva automaticamente ogni volta che il valore nelle celle designate per il filtro viene aggiornato, risultando particolarmente utile per dashboard, report interattivi o modelli in cui gli utenti si aspettano un filtraggio dinamico basato su celle centralizzate contenenti parametri.
1. Passa al foglio di lavoro in cui vuoi automatizzare il filtraggio delle righe in base agli input inseriti nelle celle.
2. Fare clic con il pulsante destro del mouse sulla scheda del foglio in basso nella finestra di Excel e scegliere Visualizza codice dal menu contestuale. Nella finestra di Microsoft Visual Basic, Applications Edition che appare, incollare il seguente codice VBA nell’ampia area vuota (comunemente chiamata finestra del codice o modulo del foglio di lavoro), come mostrato qui:
Codice VBA: Filtra automaticamente i dati in base al valore immesso nella cella
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

Nota: In questo codice VBA, A1:C20 indica l’intervallo dati a cui applicare il filtro. E2 è la cella in cui si digita il valore del filtro (il criterio desiderato), mentre E1:E2 sono le celle utilizzate come condizioni di filtro. È possibile modificare questi intervalli in base alle proprie esigenze, assicurandosi che corrispondano esattamente alla posizione dei dati e delle condizioni di filtro nel proprio foglio di lavoro. Inoltre, è consigliabile evitare unione celle e verificare che l’intervallo dati contenga eventuali intestazioni necessarie per un filtraggio accurato.
3. Ora inserisci o modifica le condizioni di filtro nelle celle E1 e/o E2. Non appena premi Invio, il codice VBA viene eseguito automaticamente e filtra l’intervallo dati designato, mostrando solo le righe corrispondenti ai criteri inseriti.
Se il filtro non sembra funzionare subito dopo aver inserito un valore, assicurati che le macro siano abilitate nella cartella di lavoro e che gli intervalli nel codice VBA corrispondano esattamente alla struttura attuale del foglio di lavoro. In ambienti multiutente, ricorda agli altri utenti di abilitare le macro per garantire il corretto funzionamento di questa funzionalità.
Questo metodo basato su VBA si rivela particolarmente vantaggioso per dashboard dinamiche guidate da parametri, modelli interattivi per l’inserimento dati o qualsiasi scenario in cui la riapplicazione manuale delle condizioni di filtro risulterebbe inefficiente. Tuttavia, è importante tenere presente che gli utenti potrebbero incontrare problemi se disabilitano le macro e che le soluzioni basate su VBA sono specifiche del file in cui il codice viene inserito.
Se lo scenario prevede modifiche frequenti dei criteri da parte di più utenti con impostazioni di sicurezza Excel diverse o se si intende condividere ampiamente il file, potrebbe essere opportuno valutare soluzioni alternative basate su formule o componenti aggiuntivi per Excel.
Demo: Applica automaticamente il filtro alle righe in base al valore immesso nella cella tramite codice VBA
Filtra i dati in base a più criteri o a condizioni specifiche, come Lunghezza testo, Maiuscole/minuscole e altro ancora. Quando servono operazioni di filtraggio più avanzate—come combinare diverse condizioni di filtro, filtrare in base alla lunghezza del testo, distinguere tra maiuscole e minuscole o applicare filtri su periodi specifici—i filtri integrati di Excel potrebbero non bastare. In questi casi, i Super Filtri di Kutools per Excel offrono una soluzione pratica per gestire in modo semplice ed efficiente anche i requisiti di filtraggio più complessi. Questa funzionalità ti permette di:
Kutools per Excel: Dotato di oltre 300 pratici componenti aggiuntivi per Excel, prova gratuita completa per 30 giorni.Scarica subito la versione di prova gratuita! |
Migliori Strumenti per la Produttività in Office
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.
- 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
