Skip to main content

Crea più cartelle e sottocartelle da un elenco di dati in Excel

Author: Xiaoyang Last Modified: 2025-05-29

Supponiamo che tu abbia un elenco di nomi del personale all'interno di un intervallo di una scheda e desideri creare cartelle individuali per ciascuno di essi per archiviare le loro informazioni. Creare manualmente ogni cartella può essere dispendioso in termini di tempo. Tuttavia, esistono metodi efficienti per accelerare questo processo. In questa guida, condividerò diversi approcci per generare rapidamente cartelle basate sui valori delle celle specificati.

A screenshot of an Excel worksheet containing a list of staff names for folder creation

Crea cartelle basate sui valori delle celle

Crea cartelle e sottocartelle basate sui valori delle celle con codice VBA


Crea cartelle basate sui valori delle celle

In questa sezione, esploreremo vari metodi in dettaglio, offrendo istruzioni passo-passo complete per creare rapidamente ed efficacemente cartelle basate su un elenco di valori delle celle.

Crea cartelle da un elenco utilizzando il comando MD e Blocco note

Trasformare un elenco da Excel in cartelle utilizzando il comando MD e Blocco note è un trucco intelligente che combina la semplicità dello scripting batch con l'abilità di Excel di mantenere le cose organizzate. Questo metodo è ottimo per creare molte cartelle rapidamente, senza doverlo fare tutto manualmente. Ecco una guida passo-passo per completare questa operazione:

Passo 1: Usa il comando MD per creare formule

Copia o inserisci la seguente formula in una cella vuota accanto al tuo primo valore della cella (B1, ad esempio), quindi trascina la maniglia di riempimento verso il basso per applicare la formula a tutti gli elementi dell'elenco.

="MD "&A1

A screenshot showing the MD command formula used in Excel to create folders

Passo 2: Copia e incolla le formule in un file di Blocco note

  1. Premi "Ctrl + C" per copiare le celle con la formula del comando MD.
  2. Apri Blocco note e premi "Ctrl + V" per incollare i comandi in un nuovo file.
    A screenshot of Notepad displaying copied MD commands from Excel for folder creation

Passo 3: Salva il file di Blocco note come file .bat

Fai clic su "Salva con nome" dal menu "File" in Blocco note, nella finestra di dialogo "Salva con nome", scegli una directory dove vuoi creare più cartelle, quindi dai un nome a questo file con estensione .bat. Infine, fai clic sul pulsante "Salva". Vedi screenshot:
A screenshot of the Save As dialog in Notepad for saving the file with a .bat extension

Passo 4: Fai doppio clic sul file .bat per generare più cartelle

  1. Chiudi il file di Blocco note, vai alla cartella in cui hai precedentemente salvato il file .bat.
  2. Ora, osserva la magia: fai doppio clic sul file e vedrai più cartelle create tutte insieme. Guarda la demo qui sotto:
    A demonstration of double-clicking a .bat file to create multiple folders from Excel values
 

Crea cartelle da un elenco utilizzando uno strumento potente – Kutools per Excel

Con la potente funzionalità "Crea Cartelle in base ai Contenuti delle Celle" di Kutools per Excel, puoi ora creare facilmente e rapidamente cartelle da un elenco di Excel. Ma non si ferma solo alle cartelle di base; Kutools ti consente anche di creare strutture complesse con sottocartelle multi-livello in un colpo solo. Con pochi semplici passaggi, puoi trasformare i dati da Excel in un sistema di cartelle organizzato, aumentando significativamente la tua produttività.

Kutools per Excel offre oltre 300 funzionalità avanzate per semplificare compiti complessi, aumentando creatività ed efficienza. Integrato con capacità di intelligenza artificiale, Kutools automatizza le attività con precisione, rendendo la gestione dei dati senza sforzo. Informazioni dettagliate su Kutools per Excel... Prova gratuita...

Dopo aver installato Kutools per Excel, fai clic su "Kutools Plus" > "Importa / Esporta" > "Crea Cartelle in base ai Contenuti delle Celle" per aprire la finestra di dialogo Crea Cartelle in base ai Contenuti delle Celle:

  1. Seleziona i valori delle celle in base ai quali vuoi creare cartelle;
  2. Quindi, fai clic sul A screenshot of the button used to select a destination folder pulsante per specificare la cartella di destinazione in cui vuoi salvare le cartelle;
  3. Infine, fai clic sul pulsante OK.
    A screenshot of the Kutools Create Folders from Cell Contents dialog box in Excel

Risultato:

Kutools elaborerà l'elenco dalla tua scheda e creerà una cartella per ogni voce nella destinazione specificata. Vai alla cartella di destinazione per vedere il risultato. Vedi screenshot:
A screenshot showing the output of folders created by Kutools for Excel

Suggerimenti:
  1. Questa utile funzionalità può anche aiutarti a creare cartelle insieme alle loro sottocartelle secondo necessità. Per farlo, dovresti inserire i nomi desiderati per le cartelle e le sottocartelle nelle celle, utilizzando il segno di backslash (\) per separare ogni livello. I contenuti di ogni cella agiranno come una guida per impostare la struttura desiderata di cartelle e sottocartelle.
    A screenshot of an Excel sheet with folder and subfolder names entered for creation
    Quindi, applica la funzionalità "Crea Cartelle in base ai Contenuti delle Celle", tutte le cartelle insieme alle loro sottocartelle verranno create con successo. Vedi screenshot:
    A screenshot showing folders with subfolders created based on Excel cell values
  2. Per applicare questa funzionalità, scarica e installa Kutools per Excel.
 

Crea cartelle da un elenco utilizzando codice VBA

Utilizzare il codice VBA in Excel può trasformare il compito noioso di creare cartelle da un elenco in un processo rapido e automatizzato. Questa sezione ti mostrerà come applicare il codice VBA per generare cartelle.

Passo 1: Apri l'editor del modulo VBA e copia il codice

  1. Tieni premuti i tasti "ALT + F11" in Excel, e si aprirà la finestra "Microsoft Visual Basic for Applications".
  2. Fai clic su "Inserisci" > "Modulo", e incolla il seguente codice nella finestra del Modulo.
    Codice VBA: Crea cartelle basate su un elenco di valori delle celle
    Sub CreateFoldersFromSelection()
    'Updateby Extendoffice
        Dim FolderPath As String
        Dim Cell As Range
        Dim SelectedRange As Range
        Dim FolderName As String
        On Error Resume Next
        Set SelectedRange = Application.InputBox("Select the range with folder names", "Kutools for Excel", Type:=8)
        If SelectedRange Is Nothing Then Exit Sub
        On Error GoTo 0
        
        With Application.FileDialog(msoFileDialogFolderPicker)
            .Title = "Select the destination Folder"
            .AllowMultiSelect = False
            If .Show <> -1 Then Exit Sub
            FolderPath = .SelectedItems(1) & "\"
        End With
        
        For Each Cell In SelectedRange
            FolderName = FolderPath & Cell.Value
            If Cell.Value <> "" And Not FolderExists(FolderName) Then
                MkDir FolderName
            End If
        Next Cell
    End Sub
    
    Function FolderExists(ByVal Path As String) As Boolean
        On Error Resume Next
        FolderExists = (GetAttr(Path) And vbDirectory) = vbDirectory
        On Error GoTo 0
    End Function
    

Passo 2: Esegui il codice

  1. Dopo aver incollato questo codice, premi il tasto F5 per eseguire il codice. Nella finestra di dialogo, seleziona i valori delle celle in base ai quali vuoi creare cartelle. Quindi, fai clic su OK.
    A screenshot of the VBA prompt to select cell values for folder creation in Excel
  2. Quindi, nella seguente finestra "Seleziona la cartella di destinazione", specifica il percorso di destinazione per esportare le cartelle create. Quindi, fai clic sul pulsante OK, vedi screenshot:
    A screenshot of the dialog box to select a destination folder for VBA-created folders in Excel

Risultato:

Dopo aver eseguito il codice VBA, vai alla directory di destinazione per visualizzare il risultato. Lì troverai le nuove cartelle create, ognuna corrispondente a un elemento del tuo elenco Excel. Vedi screenshot:
A screenshot showing the output of folders created by VBA

Suggerimenti:
  1. Se ci sono voci duplicate nelle celle, il codice creerà solo una cartella.
  2. Se ti ritrovi a usare spesso questo codice, considera di salvare la cartella di lavoro nel formato "Cartella di lavoro con Macro di Excel". Questa azione preserva il codice all'interno della cartella di lavoro, consentendoti di eseguirlo direttamente in futuro senza dover reinserire o reimportare il codice.

Crea cartelle e sottocartelle basate sui valori delle celle con codice VBA

Occasionalmente, potresti trovarti in una situazione in cui devi generare non solo cartelle, ma anche le relative sottocartelle, basandoti sui dati all'interno delle celle di Excel. Per realizzare questo compito, qui ti introdurrò un codice VBA.

Passo 1: Prepara i dati

Prima di tutto, dovresti inserire i dati come mostrato nello screenshot seguente, posizionando i nomi delle cartelle principali nella prima colonna e i nomi delle sottocartelle nella seconda colonna.
A screenshot of data in Excel with columns for folders and subfolders

Passo 2: Apri l'editor del modulo VBA e copia il codice

  1. Tieni premuti i tasti "ALT + F11" in Excel, e si aprirà la finestra "Microsoft Visual Basic for Applications".
  2. Fai clic su "Inserisci" > "Modulo", e incolla il seguente codice nella finestra del Modulo.
    Codice VBA: Crea cartelle e sottocartelle basate sui valori delle celle
    Sub CreateFoldersAndSubfoldersWithUserInput()
    'Updateby Extendoffice
        Dim Rng As Range
        Dim Cell As Range
        Dim basePath As String
        Dim fldrPicker As FileDialog
        Dim FolderPath As String, subfolderPath As String
        On Error Resume Next
        Set Rng = Application.InputBox("Select the range of cells (two columns: one is folder column, another s subfolder column):", "Kutools for Excel", Type:=8)
        If Rng Is Nothing Then Exit Sub
        On Error GoTo 0
        Set fldrPicker = Application.FileDialog(msoFileDialogFolderPicker)
        With fldrPicker
            .Title = "Select the Base Folder Path"
            .AllowMultiSelect = False
            If .Show <> -1 Then Exit Sub
            basePath = .SelectedItems(1)
        End With
        If Right(basePath, 1) <> "\" Then basePath = basePath & "\"
        For Each Cell In Rng.Columns(1).Cells
            If Not Cell.Value = "" Then
                FolderPath = basePath & Cell.Value
                If Not FolderExists(FolderPath) Then MkDir FolderPath
                If Not Cell.Offset(0, 1).Value = "" Then
                    subfolderPath = FolderPath & "\" & Cell.Offset(0, 1).Value
                    If Not FolderExists(subfolderPath) Then MkDir subfolderPath
                End If
            End If
        Next Cell
    End Sub
    
    Function FolderExists(FolderPath As String) As Boolean
        On Error Resume Next
        FolderExists = (GetAttr(FolderPath) And vbDirectory) = vbDirectory
        On Error GoTo 0
    End Function
    

Passo 3: Esegui il codice

  1. Dopo aver incollato questo codice, premi il tasto F5 per eseguire il codice. Nella finestra di dialogo, seleziona i valori delle celle in base ai quali vuoi creare cartelle. Quindi, fai clic su OK.
    A screenshot of the VBA prompt to select cell ranges for creating folders and subfolders in Excel
  2. Nella seguente finestra pop-up, specifica il percorso di destinazione per esportare le cartelle create. Quindi, fai clic sul pulsante OK, vedi screenshot:
    A screenshot of the VBA dialog box for selecting a base folder path in Excel

Risultato:

Dopo aver eseguito il codice VBA, vai alla directory di destinazione per visualizzare il risultato. Vedrai che le cartelle e le rispettive sottocartelle, come indicato dai valori delle celle, sono state create con successo come mostrato nello screenshot seguente:
A screenshot showing folders and subfolders created using VBA code in Excel

Suggerimenti:
  1. Questo codice è disponibile solo per creare le cartelle principali e le loro sottocartelle di primo livello.
  2. Se ti ritrovi a usare spesso questo codice, considera di salvare la cartella di lavoro nel formato "Cartella di lavoro con Macro di Excel". Questa azione preserva il codice all'interno della cartella di lavoro, consentendoti di eseguirlo direttamente in futuro senza dover reinserire o reimportare il codice.

Articoli correlati:

  • Elenca tutte le cartelle e sottocartelle in Excel
  • Ti sei mai trovato a soffrire di questo problema di elencare tutte le cartelle e sottocartelle da una directory specificata in una scheda? In Excel, non c'è un modo rapido e pratico per ottenere il nome di tutte le cartelle in una directory specifica in una volta sola. Per affrontare il compito, questo articolo potrebbe esserti utile.
  • Copia o sposta file da una cartella a un'altra in base a un elenco
  • Se hai un elenco di nomi di file in una colonna in una scheda, e i file si trovano in una cartella sul tuo computer. Ma ora, devi spostare o copiare questi file i cui nomi sono elencati nella scheda dalla loro cartella originale a un'altra, come mostrato nello screenshot seguente. Come potresti completare questo compito il più rapidamente possibile in Excel?
  • Rinomina più file in una cartella
  • Forse molti di noi hanno sofferto di questo problema: dobbiamo rinominare più file in una cartella, rinominare i nomi dei file uno per uno ci farà impazzire se ci sono centinaia o migliaia di file in quella cartella. Ci sono buone funzioni per noi per gestire questo compito?