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

Come eseguire una macro contemporaneamente su più cartelle di lavoro?

AutoreXiaoyang Data di modifica

Gestire più cartelle di lavoro Excel spesso richiede di ripetere la stessa operazione o attività automatizzata su diversi file. Aprire manualmente ogni cartella per eseguire una macro è non solo dispendioso in termini di tempo, ma aumenta anche il rischio di errori, specialmente quando si lavora con un gran numero di file. Automatizzare questo processo è essenziale per potenziare produttività e precisione.

Grazie a VBA (Visual Basic for Applications), puoi semplificare il tuo flusso di lavoro ed eseguire automaticamente una macro su ogni cartella di lavoro contenuta in una specifica cartella, risparmiando tempo e garantendo coerenza. Questa guida ti mostra come configurare e utilizzare una soluzione VBA per applicare la macro desiderata a più file, senza doverli aprire manualmente uno alla volta.

Questo approccio è particolarmente utile nei seguenti scenari:

  • Applicare formattazione o calcoli a una raccolta di report mensili
  • Standardizzare i passaggi di pulizia dei dati su un insieme di esportazioni
  • Aggiornare in batch modelli o aggiungere strutture a file legacy
Questo metodo di elaborazione batch è perfetto per chi gestisce attività ripetitive in Excel in ambito aziendale, educativo o di ricerca.

Esegui la stessa macro su più cartelle di lavoro con codice VBA

Per eseguire in modo efficiente la stessa macro su più cartelle di lavoro senza doverle aprire manualmente una per una, puoi utilizzare uno script VBA pensato per operazioni batch. Questo approccio ti chiederà di selezionare una cartella e procederà automaticamente con l’elaborazione di ogni file Excel in essa contenuto, risultando ideale per la maggior parte delle attività comuni di automazione tramite macro.

Prima di iniziare:

  • Tutte le cartelle di lavoro di destinazione sono chiuse. Lo script le aprirà ed elaborerà automaticamente, secondo necessità.
  • La macro che desideri eseguire non deve richiedere alcuna interazione da parte dell’utente—ad esempio, finestre di messaggio o richieste di input—poiché l’elaborazione in batch verrebbe interrotta da tali finestre di dialogo.
  • Assicurati di aver salvato il tuo lavoro, poiché l’elaborazione batch delle macro non può essere facilmente annullata e potrebbe sovrascrivere dati se non è stata codificata con la massima attenzione.

Segui questi passaggi per applicare una macro a più cartelle di lavoro:

1. Tieni premuti i tasti «ALT + F11» per aprire la finestra di Microsoft Visual Basic for Applications.

2. Nell’editor VBA aperto, fai clic su "Inserisci« > »Modulo" per creare un nuovo modulo, quindi incolla la macro fornita nella finestra vuota del modulo.

Codice VBA: esegui la stessa macro su più cartelle di lavoro contemporaneamente:

Sub LoopThroughFiles()
    Dim xFd As FileDialog
    Dim xFdItem As Variant
    Dim xFileName As String
    Set xFd = Application.FileDialog(msoFileDialogFolderPicker)
    If xFd.Show = -1 Then
        xFdItem = xFd.SelectedItems(1) & Application.PathSeparator
        xFileName = Dir(xFdItem & "*.xls*")
        Do While xFileName <> ""
            With Workbooks.Open(xFdItem & xFileName)
                'your code here
            End With
            xFileName = Dir
        Loop
    End If
End Sub

Note e suggerimenti importanti:

  • Nel codice riportato sopra, individua la riga With Workbooks.Open(xFdItem & xFileName). Copia e incolla il codice della macro desiderata (escludendo le righe)Sub e End Sub) tra questa riga e End With. In questo modo, l’operazione verrà eseguita all’interno di ogni cartella di lavoro aperta.
  • Verifica attentamente la logica della tua macro e i percorsi per garantire un’elaborazione batch corretta; ti consigliamo di testarla prima su un piccolo gruppo di file, soprattutto se la macro modifica i dati.

Vedi lo screenshot che illustra dove incollare la logica della tua macro:

Uno screenshot che mostra il codice VBA per eseguire una macro su più cartelle di lavoro in Excel

3. Premi il tasto "F5" nell’editor VBA per eseguire lo script: apparirà una finestra per la selezione della cartella.

4. Nella finestra «Sfoglia», seleziona la cartella che contiene tutti i file di lavoro da elaborare. Lo script analizzerà ogni file Excel presente in quella posizione ed eseguirà la tua macro.

Uno screenshot della finestra di dialogo per la selezione della cartella per eseguire una macro su più cartelle di lavoro

5. Fai clic su «OK» per avviare l’operazione batch: la macro aggiunta verrà eseguita su tutte le cartelle di lavoro selezionate nella cartella scelta. L’elaborazione di gruppi più ampi potrebbe richiedere più tempo, a seconda della complessità della macro e del numero di file.

  • Sicurezza macro: Se richiesto, abilita le macro oppure eseguile da una posizione attendibile.
  • Destinazione Tipo di File: Il modello *.xls* include .xlsx, .xlsm e .xlsb. Modificalo se necessario.
  • Qualifica completamente all’interno del blocco With:Usa il punto iniziale (ad esempio,).Worksheets("Sheet1")) per assicurarti che le azioni vengano applicate alla cartella di lavoro aperta.

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