Skip to main content

Kutools per Office — Una Suite. Cinque Strumenti. Ottieni di Più.

Come elencare tutti i file in una cartella e nelle sottocartelle in un foglio di lavoro?

Author Xiaoyang Last modified

Quando si lavora con grandi insiemi di file memorizzati in diverse cartelle e sottocartelle, potrebbe essere necessario generare un elenco completo di tutti i nomi dei file per il tracciamento, la catalogazione o l'elaborazione in batch. Excel, tuttavia, non fornisce una funzione integrata diretta per elencare tutti i nomi dei file da una cartella, inclusi quelli delle sue sottocartelle, in un foglio di lavoro. Questa limitazione può creare sfide, specialmente se le strutture delle cartelle sono complesse o i file vengono aggiornati regolarmente. Fortunatamente, esistono metodi pratici e affidabili per raggiungere questo obiettivo in modo efficiente all'interno di Excel.

In questa guida scoprirai diversi approcci per elencare tutti i nomi dei file, inclusi quelli all'interno delle sottocartelle, direttamente in un foglio di lavoro di Excel, insieme a dettagliate istruzioni operative, chiarimenti sui parametri e suggerimenti per evitare errori comuni. Queste soluzioni aiuteranno a semplificare il processo di gestione dei file e possono essere adattate per vari compiti organizzativi professionali o personali.

Elencare rapidamente e facilmente tutti i nomi dei file nella cartella e nelle sottocartelle con Power Query

Elencare rapidamente e facilmente tutti i nomi dei file nella cartella e nelle sottocartelle con Kutools per Excel

Elencare tutti i nomi dei file nella cartella e nelle sottocartelle con codice VBA


Elencare rapidamente e facilmente tutti i nomi dei file nella cartella e nelle sottocartelle con Power Query

Nelle versioni recenti di Excel, la funzionalità integrata Ottieni Dati (Power Query) può essere utilizzata per caricare l'elenco dei file da una cartella, inclusi attributi selezionati.

1. Vai su Dati > Ottieni Dati > Da File > Da Cartella.

2. Seleziona la cartella in cui desideri elencare tutti i file, quindi fai clic su Apri.

Una tabella elenca tutti i file della cartella selezionata, inclusi i file presenti nelle sottocartelle.

3. Fai clic su Carica / Carica In per caricare l'elenco in un foglio di lavoro.


Elencare rapidamente e facilmente tutti i nomi dei file nella cartella e nelle sottocartelle con Kutools per Excel

Sebbene VBA sia abile nel generare semplici elenchi, potrebbe risultare meno conveniente per gli utenti che non sono familiari con la codifica o con le impostazioni di sicurezza delle macro di Excel. Inoltre, se desideri elencare non solo i nomi dei file, ma anche visualizzare le loro dimensioni, tipi, date di creazione o modifica e altri attributi dettagliati contemporaneamente, l'add-in Kutools per Excel offre una soluzione intuitiva e robusta.

Lo strumento Elenco nomi file in Kutools per Excel ti consente di raccogliere informazioni sui file da una cartella selezionata e da tutte le sue sottocartelle con pochi clic del mouse. Questo approccio è particolarmente vantaggioso per gli utenti che richiedono maggiore flessibilità, come filtrare per tipo di file, creare collegamenti ipertestuali per un accesso facile o includere file e cartelle nascoste nei risultati. È particolarmente utile per gestire archivi di documenti, tenere traccia di librerie multimediali o preparare inventari di dati per backup o audit. Si noti che è necessario scaricare e installare Kutools per Excel prima di procedere con i passaggi seguenti.

Dopo aver completato l'installazione, segui questi passaggi per utilizzare la funzione Elenco nomi file:

1. Fai clic sulla scheda Impresa nella barra degli strumenti di Excel, seleziona Importa ed Esporta, quindi scegli Elenco nomi file dal menu. Questo aprirà la finestra di dialogo di configurazione.

2. All'interno della finestra di dialogo Elenco nomi file, puoi specificare le seguenti opzioni per adattare l'elenco dei file alle tue esigenze:

A: Fai clic sull'icona della cartella a screenshot of the folder icon per selezionare la cartella che desideri scansionare. Lo strumento includerà automaticamente le sottocartelle, se desiderato.

B: Nella sezione Tipo di file, seleziona "Tutti i file" per includere ogni file indipendentemente dal tipo, oppure specifica un'estensione di file particolare (come *.xlsx, *.docx, ecc.) se sei interessato solo a file di un certo tipo.

C: Nella sezione Unità di dimensione del file, puoi scegliere tra unità (come Byte, KB, MB) per elencare le dimensioni dei file per una migliore interpretazione.

Nota: Per includere i nomi dei file da tutte le sottocartelle, assicurati di spuntare l'opzione Includi file nelle sottodirectory. Inoltre, puoi spuntare Includi file e cartelle nascoste se desideri elencarli. Selezionando l'opzione Crea collegamenti ipertestuali verranno generati automaticamente collegamenti cliccabili per ciascun file e cartella, il che è utile per accedere rapidamente ai file direttamente dal foglio di lavoro. Se alcuni file mancano dall'elenco, conferma le selezioni dei filtri e verifica che i file non siano limitati da permessi o restrizioni di sistema.

a screenshot of configuring the Filename List dialog box

3. Fai clic su OK per generare l'elenco dei file. Tutti i file dalla cartella selezionata e dalle sue sottocartelle verranno visualizzati in un nuovo foglio di lavoro, insieme agli attributi dei file scelti (come percorso completo, dimensione, tipo, data di creazione e modifica). Questo fornisce una panoramica chiara e organizzata, e puoi utilizzare le funzionalità di filtro e ordinamento familiari di Excel per gestire ulteriormente i tuoi dati.

a screenshot listing the details of files of the selected folder

Fai clic per conoscere ulteriori dettagli su questa utility Elenco nomi file.

Scarica e prova Kutools per Excel ora!


Elencare tutti i nomi dei file nella cartella e nelle sottocartelle con codice VBA

Per impostazione predefinita, Excel non include una funzione nativa per elencare ricorsivamente i file dalle cartelle e dalle loro sottocartelle. Tuttavia, puoi utilizzare VBA (Visual Basic for Applications) per automatizzare questo processo. L'utilizzo di VBA consente agli utenti avanzati di estendere le funzionalità di Excel, offrendoti la flessibilità di personalizzare l'output, ad esempio per recuperare solo i nomi dei file o includere proprietà aggiuntive come i percorsi dei file.

Questa soluzione è particolarmente adatta quando sei a tuo agio con l'editor VBA e hai bisogno di automatizzare procedure simili di elenco di file su base regolare. È anche utile per chiunque voglia mantenere il proprio ambiente Excel sgombro senza installare add-in. Tuttavia, tieni presente che le macro VBA richiedono l'abilitazione delle macro in Excel, il che potrebbe essere limitato in ambienti ad alta sicurezza. Ricorda sempre di salvare la tua cartella di lavoro prima di eseguire qualsiasi macro per prevenire la perdita accidentale di dati in caso di modifiche non salvate.

1. Crea o attiva un nuovo foglio di lavoro in cui desideri elencare tutti i nomi dei file. Assicurati che questo foglio di lavoro sia vuoto per evitare di sovrascrivere dati importanti.

2. Premi ALT + F11 per aprire la finestra dell'editor Microsoft Visual Basic for Applications (VBA).

3. Nella finestra VBA, fai clic su Inserisci nella barra del menu, quindi scegli Modulo. Questa azione inserirà un nuovo modulo in cui potrai incollare il tuo codice VBA.

Codice VBA: Elenca tutti i nomi dei file nella cartella e nelle sottocartelle

Sub MainList()
'Updateby Extendoffice
Set folder = Application.FileDialog(msoFileDialogFolderPicker)
If folder.Show <> -1 Then Exit Sub
xDir = folder.SelectedItems(1)
Call ListFilesInFolder(xDir, True)
End Sub
Sub ListFilesInFolder(ByVal xFolderName As String, ByVal xIsSubfolders As Boolean)
Dim xFileSystemObject As Object
Dim xFolder As Object
Dim xSubFolder As Object
Dim xFile As Object
Dim rowIndex As Long
Set xFileSystemObject = CreateObject("Scripting.FileSystemObject")
Set xFolder = xFileSystemObject.GetFolder(xFolderName)
rowIndex = Application.ActiveSheet.Range("A65536").End(xlUp).Row + 1
For Each xFile In xFolder.Files
  Application.ActiveSheet.Cells(rowIndex, 1).Formula = xFile.Name
  rowIndex = rowIndex + 1
Next xFile
If xIsSubfolders Then
  For Each xSubFolder In xFolder.SubFolders
    ListFilesInFolder xSubFolder.Path, True
  Next xSubFolder
End If
Set xFile = Nothing
Set xFolder = Nothing
Set xFileSystemObject = Nothing
End Sub
Function GetFileOwner(ByVal xPath As String, ByVal xName As String)
Dim xFolder As Object
Dim xFolderItem As Object
Dim xShell As Object
xName = StrConv(xName, vbUnicode)
xPath = StrConv(xPath, vbUnicode)
Set xShell = CreateObject("Shell.Application")
Set xFolder = xShell.Namespace(StrConv(xPath, vbFromUnicode))
If Not xFolder Is Nothing Then
  Set xFolderItem = xFolder.ParseName(StrConv(xName, vbFromUnicode))
End If
If Not xFolderItem Is Nothing Then
  GetFileOwner = xFolder.GetDetailsOf(xFolderItem, 8)
Else
  GetFileOwner = ""
End If
Set xShell = Nothing
Set xFolder = Nothing
Set xFolderItem = Nothing
End Function

Prima di eseguire il codice, rivedi i commenti per familiarizzare con le funzioni e le variabili utilizzate. Se desideri modificare i dati elencati (come percorsi completi o tipi di file), potrebbe essere necessario regolare il codice di conseguenza.

4. Una volta incollato il codice nella finestra del modulo, premi il tasto F5 per eseguirlo. Apparirà una finestra di dialogo Macro; seleziona il nome della macro MainList e fai clic su Esegui. Se hai un'altra macro con un nome simile, assicurati di selezionare quella corretta.

a screenshot of running the VBA code

5. Nella finestra Sfoglia che appare, naviga fino alla cartella di destinazione i cui file e sottocartelle desideri elencare. La scelta della cartella di partenza corretta è importante, poiché la macro recupererà ricorsivamente i file da tutte le sottocartelle nidificate.

a screenshot of selecting the folder you want to list all filenames including the subfolders

6. Dopo aver specificato la cartella desiderata, fai clic su OK. La macro elaborerà ora la cartella e tutte le sue sottocartelle, producendo un elenco di tutti i nomi dei file nel foglio di lavoro corrente a partire dalla cella A2. A seconda del numero di file e della profondità della struttura delle sottocartelle, questo processo potrebbe richiedere diversi secondi o più. L'elenco risultante fornisce una visione dettagliata del contenuto della tua cartella.

a screenshot of the seleted folder
a screenshot of an arrow
a screenshot listing all filenames from the selected folder and its subfolders

Se ricevi un errore, verifica nuovamente che la cartella selezionata esista e contenga file, e assicurati che le macro siano abilitate nelle impostazioni di sicurezza di Excel. Se stai lavorando con una grande struttura di cartelle o unità di rete, il tempo di elaborazione potrebbe aumentare e potresti ricevere errori di timeout o memoria: prova a eseguire la macro su sottocartelle più piccole se ciò accade.

Sebbene VBA sia efficiente per l'elenco di file di base, generalmente non acquisisce attributi come la dimensione del file, la data di modifica o il proprietario del file per impostazione predefinita. Se richiedi questi dettagli aggiuntivi, considera la possibilità di modificare il codice o utilizzare un metodo alternativo come descritto di seguito.


Per ottenere i migliori risultati, rivedi e aggiorna periodicamente i tuoi elenchi di file, specialmente se il contenuto delle cartelle cambia frequentemente. Conferma sempre di avere le autorizzazioni necessarie, soprattutto quando scansioni posizioni di rete o unità condivise. Se incontri risultati inaspettati, controlla eventuali problemi come file nascosti, ritardi di sincronizzazione o limitazioni di accesso ai file. Se i file o le cartelle vengono saltati, prova ad eseguire Excel come amministratore o utilizza strutture di cartelle semplificate.

La scelta del miglior metodo dipende dal tuo livello di comfort, dai requisiti specifici e da quanto spesso devi eseguire il compito. Ogni metodo ha i suoi vantaggi: puoi usare VBA per la personalizzazione, Kutools per la convenienza e più attributi, o le funzionalità integrate di Windows/Excel per la soluzione più semplice senza strumenti esterni. Se i problemi persistono, consulta la documentazione di Excel o del sistema per ulteriori risoluzioni dei problemi.

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 crea grafici | Attiva Funzioni avanzate
Funzionalità più usate: Trova, evidenziazione o contrassegna duplicati | Elimina righe vuote | Unisci colonne o celle senza perdere dati | Arrotonda senza formula...
Super RICERCA.VERT: Ricerca VERT per criteri multipli | Ricerca VERT per 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...
Gestore colonne: Aggiungi un numero specifico di colonne | Sposta colonne | Cambia stato di visibilità delle colonne nascoste | Confronta intervalli & colonne...
Funzionalità in primo piano: Attenzione della griglia | Visualizzazione di progettazione | Barra delle formule avanzata | Gestore di cartelle di lavoro & fogli | Libreria AutoText | Selettore di data | Unisci dati | Crittografa/Decrittografa celle | Invia Email per elenco | Super Filtri | Filtro speciale (filtra grassetto/corsivo/barrato...)...
Top15 strumenti:12 strumenti Testo (Aggiungi testo, Elimina Caratteri Specifici, ...) |50+ tipi di grafico (Diagramma di Gantt, ...) |40+ formule pratiche (Calcola letà 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 Unione & Dividi (Unione avanzata righe, Dividi celle, ...) | ... e altro ancora
Usa Kutools nella lingua che preferisci – supporta Inglese, Spagnolo, Tedesco, Francese, Cinese e oltre40 altre lingue!

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 farti risparmiare tempo. Clicca qui per ottenere la funzione di cui hai più bisogno...


Office Tab porta le schede su Office e rende il tuo lavoro molto più semplice

  • Abilita la modifica e 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 produttività del50% e riduce centinaia di clic del mouse ogni giorno!

Tutti gli add-in Kutools. Un solo programma di installazione

La suite Kutools for Office include add-in per Excel, Word, Outlook & PowerPoint più Office Tab Pro, ideale per i team che lavorano su più app di Office.

Excel Word Outlook Tabs PowerPoint
  • Suite tutto-in-uno — Add-in per Excel, Word, Outlook & PowerPoint + Office Tab Pro
  • Un solo programma di installazione, una sola licenza — configurazione in pochi minuti (pronto per MSI)
  • Funzionano meglio insieme — produttività ottimizzata su tutte le app Office
  • Prova completa30 giorni — nessuna registrazione, nessuna carta di credito
  • Massimo risparmio — costa meno rispetto all’acquisto singolo degli add-in