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

Come si copiano i dati in un altro foglio di lavoro utilizzando il Filtro avanzato in Excel?

AutoreXiaoyang Data di modifica

In Excel, la funzione Filtro avanzato è uno strumento efficace per estrarre e filtrare i dati in base ai propri criteri. Viene comunemente utilizzata nello stesso foglio di lavoro, ma potresti notare che, quando cerchi di copiare direttamente i risultati filtrati in un foglio diverso, Excel visualizza una finestra di avviso. Questo comportamento può risultare frustrante, soprattutto per chi gestisce dati su più fogli, come nei report o nelle dashboard complesse. La possibilità di trasferire con precisione i dati filtrati in un altro foglio favorisce una presentazione ordinata, semplifica la condivisione e mantiene i record ben organizzati.

Uno screenshot che mostra un messaggio di avviso quando si utilizza il Filtro avanzato per copiare dati in un altro foglio di lavoro in Excel

Copiare dati in un altro foglio di lavoro con il Filtro avanzato utilizzando la funzione Filtro avanzato

Copiare dati in un altro foglio di lavoro con il Filtro avanzato utilizzando il codice VBA


Copiare dati in un altro foglio di lavoro con il Filtro avanzato utilizzando la funzione Filtro avanzato

Excel non consente di usare il Filtro avanzato per copiare direttamente i risultati filtrati in un foglio diverso da quello in cui risiedono i dati. Tuttavia, è possibile superare questo limite seguendo una soluzione pratica che prevede di attivare il foglio di destinazione prima di eseguire il filtro. I passaggi seguenti ti aiuteranno a risolvere questa sfida senza configurazioni complesse o strumenti specializzati. Questo approccio è ideale per chi desidera filtrare e spostare manualmente i dati, ad esempio per trasferimenti occasionali o liste semplici. Se invece hai bisogno di automatizzare operazioni frequenti di filtraggio e copia tra fogli, valuta l’uso del codice VBA, descritto più avanti nella guida.

1. Inizia attivando il foglio di lavoro in cui desideri copiare i risultati filtrati. Così facendo, Excel inserirà automaticamente i dati filtrati nel foglio selezionato quando applicherai il Filtro avanzato. Assicurati che l’area di destinazione non contenga dati esistenti, per evitare sovrascritture indesiderate.

Uno screenshot che mostra il foglio di lavoro attivato per la copia dei risultati filtrati tramite Filtro avanzato in Excel

2. Con il foglio di destinazione attivo, vai alla barra multifunzione di Excel, fai clic su Dati, quindi scegli Avanzate nel gruppo Ordina e filtra. Si aprirà la finestra di dialogo Filtro avanzato, dove potrai personalizzare il processo di filtraggio. Assicurati di essere nel foglio corretto prima di procedere: qui appariranno infatti i risultati filtrati.

Uno screenshot che evidenzia l'opzione Avanzate nella scheda Dati in Excel

3. Nella finestra di dialogo Filtro avanzato:

  • Seleziona Copia in un'altra posizione in Azione.
  • Fai clic Pulsante di selezione intervallo accanto a Intervallo elenco per selezionare il set di dati da filtrare. A questo punto, puoi passare al foglio di origine.
  • Fai clic Pulsante di selezione intervallo accanto all'Intervallo criteri per specificare i criteri di filtraggio. I criteri possono trovarsi in qualsiasi foglio.

Uno screenshot della finestra di dialogo Filtro avanzato in Excel con Intervallo elenco e Intervallo criteri selezionati

Suggerimenti: L'Intervallo elenco deve includere le intestazioni, affinché i criteri vengano abbinati correttamente. Anche l'Intervallo criteri deve avere intestazioni corrispondenti e contenere la logica per il filtraggio (ad esempio valori, testo o formule). Per evitare errori, assicurati che i criteri siano ben definiti e che gli intervalli non si sovrappongano.

4. Successivamente, fai clic Pulsante di selezione intervalloaccanto al campo Copia in. Seleziona quindi la cella nel foglio attivo in cui desideri che inizino ad apparire i risultati filtrati. Dopo aver effettuato le tue scelte, fai clic su OK. Excel trasferirà i dati filtrati dall’origine al foglio corrente e attivo.

Uno screenshot che mostra i risultati filtrati copiati in un altro foglio di lavoro tramite Filtro avanzato in Excel

Note e risoluzione problemi:

  • Se i tuoi criteri non trovano alcuna corrispondenza, Excel copierà nel foglio di destinazione solo le intestazioni di colonna.
  • Assicurati sempre di attivare il foglio di destinazione prima di avviare il Filtro avanzato; in caso contrario, Excel mostrerà un avviso e bloccherà la copia tra fogli diversi.
  • Se l’area di posizionamento dell’elenco si sovrappone a dati esistenti, questi potrebbero essere sovrascritti senza ulteriori avvisi.
  • Con set di dati di grandi dimensioni, il filtraggio e la copia potrebbero richiedere alcuni secondi. Attendi che Excel abbia completato l'elaborazione prima di apportare ulteriori modifiche.
  • Se compaiono messaggi di errore, controlla gli intervalli Elenco e Criteri per individuare righe vuote, intestazioni non corrispondenti o celle unite, che potrebbero interferire con il filtraggio.

Questo metodo manuale è ideale per attività occasionali o semplici e offre un feedback immediato in caso di errori. Per flussi di lavoro più complessi o operazioni ripetute, l’automazione con VBA fa risparmiare tempo e riduce gli errori, come illustrato di seguito.


Copiare dati in un altro foglio di lavoro con il Filtro avanzato utilizzando il codice VBA

Per gli utenti che lavorano frequentemente con il filtraggio tra fogli diversi o che necessitano di un’automazione più robusta, il VBA (Visual Basic for Applications) offre un modo efficiente per trasferire dati filtrati tra fogli di lavoro, aggirando i limiti dell’interfaccia standard. Questa soluzione è particolarmente utile in scenari che implicano una gestione ripetitiva dei dati o report che richiedono una logica di filtro coerente.

1. Inizia attivando il foglio di lavoro che contiene i dati da filtrare e copiare. Questo passaggio definisce il contesto necessario per l’esecuzione del codice e per le richieste di selezione.

2. Premi ALT + F11 in Excel per aprire l'editor Microsoft Visual Basic for Applications.

3. Nella finestra dell’editor VBA, fai clic su Inserisci > Modulo per aggiungere un nuovo modulo. Copia quindi il codice seguente e incollalo nella finestra del modulo:

Codice VBA: Copiare dati in un altro foglio di lavoro con il Filtro avanzato:

Sub Advancedfiltertoanothersheet()
'Updateby Extendoffice
    Dim xStr As String
    Dim xAddress As String
    Dim xRg As Range
    Dim xCRg As Range
    Dim xSRg As Range
    On Error Resume Next
    xAddress = ActiveWindow.RangeSelection.Address
    Set xRg = Application.InputBox("Please select the filter range:", "Kutools for Excel", xAddress, , , , , 8)
    If xRg Is Nothing Then Exit Sub
    Set xCRg = Application.InputBox("Please select the criteria range:", "Kutools for Excel", "", , , , , 8)
    If xCRg Is Nothing Then Exit Sub
    Set xSRg = Application.InputBox("Please select the output range:", "Kutools for Excel", "", , , , , 8)
    If xSRg Is Nothing Then Exit Sub
    xRg.AdvancedFilter xlFilterCopy, xCRg, xSRg, False
    xSRg.Worksheet.Activate
    xSRg.Worksheet.Columns.AutoFit
End Sub

4. Dopo aver inserito il codice, esegui la macro premendo il tasto F5. Comparirà una finestra di dialogo per selezionare l’intervallo di filtro (i dati con intestazioni da filtrare). Seleziona l’intervallo desiderato e fai clic su OK.

Uno screenshot di una finestra di richiesta per la selezione dell'intervallo di filtro quando si utilizza VBA per copiare dati filtrati in Excel

5. La finestra successiva ti chiederà di selezionare l’intervallo dei criteri. Anche questo deve includere le intestazioni e contenere i criteri da applicare per il filtraggio. Seleziona le celle con i criteri e fai clic su OK.

Uno screenshot di una finestra di richiesta per la selezione dell'intervallo criteri quando si utilizza VBA per copiare dati filtrati in Excel

6. Comparirà infine una finestra di dialogo che ti chiederà di selezionare l'area di posizionamento dell'elenco nel foglio di destinazione. Puoi passare a un foglio diverso, se necessario, quindi seleziona la cella in cui desideri far iniziare l’output filtrato. Premi OK dopo aver effettuato la selezione.

Uno screenshot di una finestra di richiesta per la selezione dell'intervallo di output in un altro foglio di lavoro quando si utilizza VBA per copiare dati filtrati in Excel

7. I dati filtrati vengono copiati automaticamente nella posizione specificata del foglio selezionato, e le colonne nel foglio di destinazione si adattano automaticamente alla larghezza ideale. Non perderai alcun dato originale in nessuno dei due fogli, a meno che la destinazione scelta non contenga già contenuti: in tal caso, questi potrebbero essere sovrascritti.

  • Precauzioni:
    • Assicurati che sia l'intervallo del filtro che quello dei criteri includano le intestazioni e non contengano celle unite o righe vuote, per evitare errori.
    • Assicurati che la cella di destinazione per l'output sia posizionata in modo da poter contenere l’intero set di dati filtrati, altrimenti potresti sovrascrivere i dati adiacenti.
    • Se ripeti spesso questa procedura, puoi salvare la macro e assegnarle una scorciatoia per un accesso ancora più rapido.
    • In caso di errori o se la macro non viene eseguita come previsto, assicurati che le macro siano abilitate e che la cartella di lavoro sia salvata in un formato che supporti le macro (.xlsm).

Risoluzione problemi e suggerimenti:

  • Se selezioni “Seleziona intervallo” in modo errato o lo lasci vuoto, la macro verrà chiusa senza apportare modifiche: rieseguila semplicemente e seleziona nuovamente le aree corrette.
  • Quando lavori con set di dati di grandi dimensioni, attendi il completamento del processo prima di eseguire qualsiasi altra azione.
  • Puoi modificare il codice VBA per integrare logiche più avanzate, come la rimozione dei duplicati o la copia dell’intera riga.

In sintesi, entrambe le soluzioni permettono di copiare dati filtrati in un altro foglio tramite il Filtro avanzato: i metodi manuali sono perfetti per attività semplici o occasionali, mentre l’approccio con VBA è ideale per scenari di gestione dati regolari e automatizzati. La scelta migliore dipenderà dal tuo flusso di lavoro, dal tuo livello di competenza tecnica e da quanto spesso devi ripetere queste operazioni.


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