Crea più cartelle e sottocartelle da un elenco di dati in Excel
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.
Crea cartelle basate sui valori delle celle
- Utilizzando il comando MD e Blocco note
- Utilizzando una funzionalità potente – Kutools per Excel
- Utilizzando codice VBA
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
Passo 2: Copia e incolla le formule in un file di Blocco note
- Premi "Ctrl + C" per copiare le celle con la formula del comando MD.
- Apri Blocco note e premi "Ctrl + V" per incollare i comandi in un nuovo file.
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:
Passo 4: Fai doppio clic sul file .bat per generare più cartelle
- Chiudi il file di Blocco note, vai alla cartella in cui hai precedentemente salvato il file .bat.
- Ora, osserva la magia: fai doppio clic sul file e vedrai più cartelle create tutte insieme. Guarda la demo qui sotto:
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à.
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:
- Seleziona i valori delle celle in base ai quali vuoi creare cartelle;
- Quindi, fai clic sul
pulsante per specificare la cartella di destinazione in cui vuoi salvare le cartelle;
- Infine, fai clic sul pulsante OK.
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:
- 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.
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: - 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
- Tieni premuti i tasti "ALT + F11" in Excel, e si aprirà la finestra "Microsoft Visual Basic for Applications".
- 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 celleSub 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
- 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.
- 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:
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:
- Se ci sono voci duplicate nelle celle, il codice creerà solo una cartella.
- 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.
Passo 2: Apri l'editor del modulo VBA e copia il codice
- Tieni premuti i tasti "ALT + F11" in Excel, e si aprirà la finestra "Microsoft Visual Basic for Applications".
- Fai clic su "Inserisci" > "Modulo", e incolla il seguente codice nella finestra del Modulo.
Codice VBA: Crea cartelle e sottocartelle basate sui valori delle celleSub 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
- 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.
- Nella seguente finestra pop-up, specifica il percorso di destinazione per esportare le cartelle create. Quindi, fai clic sul pulsante OK, vedi screenshot:
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:
- Questo codice è disponibile solo per creare le cartelle principali e le loro sottocartelle di primo livello.
- 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 tutti i nomi dei file da una cartella e sottocartelle in una scheda
- Se vuoi generare un elenco di nomi di file all'interno di una directory in una scheda, puoi processare i seguenti modi per ottenere rapidamente un elenco di file da una directory in una scheda.
- 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?
I 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 oltre300 funzionalità avanzate per aumentare la produttività e risparmiare tempo. Clicca qui per ottenere la funzione 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 della stessa finestra, invece che in nuove finestre.
- Aumenta la tua produttività del50% e riduce centinaia di clic del mouse ogni giorno!