Salt la conținutul principal

Creați mai multe foldere și subdosare dintr-o listă de date în Excel

Să presupunem că aveți o listă de nume de personal într-un interval de foi de lucru și doriți să creați foldere individuale pentru fiecare pentru a-și stoca informațiile. Crearea manuală a fiecărui folder poate fi consumatoare de timp. Cu toate acestea, există metode eficiente pentru a accelera acest proces. În acest ghid, voi împărtăși mai multe abordări pentru a genera rapid foldere pe baza valorilor celulelor specificate.

Creați foldere pe baza valorilor celulelor

Creați foldere și subfoldere pe baza valorilor celulelor cu cod VBA


Creați foldere pe baza valorilor celulelor

În această secțiune, vom explora diverse metode în detaliu, oferind instrucțiuni pas cu pas complete pentru a crea rapid și fără efort foldere pe baza unei liste de valori ale celulelor.

Creați foldere dintr-o listă utilizând comanda MD și Notepad

Transformarea unei liste din Excel în foldere folosind comanda MD și Notepad este un truc inteligent care combină scriptarea ușoară în loturi cu talentul Excel pentru a menține lucrurile organizate. Această metodă este excelentă pentru a face o mulțime de foldere rapid, fără a fi nevoie să le faci pe toate manual. Iată un ghid pas cu pas pentru a îndeplini această sarcină:

Pasul 1: Utilizați comanda MD pentru a crea formule

Copiați sau introduceți următoarea formulă într-o celulă goală de lângă valoarea primei celule (B1, de exemplu), apoi trageți mânerul de umplere în jos pentru a aplica formula tuturor elementelor din listă.

="MD "&A1

Pasul 2: Copiați și lipiți formulele într-un fișier Notepad

  1. Anunturi Ctrl + C pentru a copia celulele cu formula de comandă MD.
  2. Operatii Deschise Notepad și apăsați Ctrl + V pentru a lipi comenzile într-un fișier nou.

Pasul 3: Salvați fișierul Notepad ca fișier .bat

Clic Salvează ca de la Fișier fila în Notepad, în Salvează ca caseta de dialog, alegeți un director în care doriți să creați mai multe foldere, apoi dați un nume pentru acest fișier cu a .băţ extensie. În cele din urmă, faceți clic Economisiți buton. Vedeți captura de ecran:

Pasul 4: Faceți dublu clic pe fișierul .bat pentru a genera mai multe foldere

  1. Închideți fișierul Notepad, navigați la folderul în care salvați anterior fișierul .bat.
  2. Acum, asistați la magia: faceți dublu clic pe fișier și veți vedea mai multe foldere create simultan. Vezi demo-ul de mai jos:
 

Creați foldere dintr-o listă folosind un instrument puternic - Kutools pentru Excel

Cu cei puternici Kutools pentru Excel'S Creați dosare din conținutul celulei funcția, acum puteți crea cu ușurință și rapid foldere dintr-o listă Excel. Dar nu se oprește doar la folderele de bază; Kutools vă permite, de asemenea, să creați structuri complexe cu subdosare cu mai multe niveluri dintr-o singură mișcare. Doar câțiva pași simpli pot transforma datele din Excel într-un sistem de foldere organizat, sporind semnificativ productivitatea.

notițe: Dacă doriți să utilizați acest lucru Creați dosare din conținutul celulei caracteristică, vă rog descărcați și instalați Kutools pentru Excel mai întâi.

După instalare Kutools pentru Excel, Vă rugăm să faceți clic Kutools Plus > Import Export > Creați dosare din conținutul celulei pentru a deschide Creați dosare din conținutul celulei căsuță de dialog:

  1. Selectați valorile celulelor pe care doriți să creați foldere pe baza;
  2. Apoi faceți clic pe butonul pentru a specifica folderul de destinație în care doriți să salvați folderele;
  3. În cele din urmă, faceți clic pe OK butonul.

Rezultat:

Kutools va procesa lista din foaia dvs. și va crea un folder pentru fiecare intrare din destinația specificată. Navigați la folderul de destinație pentru a vedea rezultatul. Vedeți captura de ecran:

Sfat:
  1. Această caracteristică utilă vă poate ajuta creați foldere împreună cu subfolderele lor după cum ai nevoie. Pentru a face acest lucru, ar trebui să introduceți numele dorite ale folderului și subfolderului în celule, folosind semnul backslash (\) pentru a separa fiecare nivel. Conținutul fiecărei celule va acționa ca un ghid pentru configurarea structurii dorite de foldere și subdosare.

    Apoi, aplicați Creați dosare din conținutul celulei caracteristică, toate folderele împreună cu subfolderele lor vor fi create cu succes. Vedeți captura de ecran:
  2. Pentru a aplica această caracteristică, vă rugăm descărcați și instalați Kutools pentru Excel mai întâi.
 

Creați foldere dintr-o listă folosind codul VBA

Utilizarea codului VBA în Excel poate transforma sarcina obositoare de a crea foldere dintr-o listă într-un proces rapid și automat. Această secțiune vă va arăta cum să aplicați codul VBA pentru a genera foldere.

Pasul 1: Deschideți editorul de module VBA și copiați codul

  1. Țineți apăsată tasta ALT + F11 tastele în Excel și deschide fișierul Microsoft Visual Basic pentru aplicații fereastră.
  2. Clic Insera > Moduleși lipiți următorul cod în Module Fereastră.
    Cod VBA: creați foldere pe baza unei liste de valori ale celulelor
    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
    

Pasul 2: Executați codul

  1. După lipirea acestui cod, vă rugăm să apăsați F5 tasta pentru a rula acest cod. În caseta de solicitare, selectați valorile celulelor din care doriți să creați foldere. Și apoi, faceți clic OK.
  2. Apoi, în cele ce urmează Selectați dosarul de destinație fereastră, specificați calea de destinație pentru a scoate folderele create. Și apoi, faceți clic OK buton, vezi captura de ecran:

Rezultat:

După ce executați codul VBA, mergeți la directorul de destinație pentru a vedea rezultatul. Acolo, veți găsi folderele nou create, fiecare corespunzând unui articol din lista dvs. Excel. vezi captura de ecran:

Sfat:
  1. Dacă există intrări duplicate în celule, rularea codului va duce la crearea unui singur folder pentru acele duplicate.
  2. Dacă utilizați frecvent acest cod, luați în considerare salvarea registrului de lucru Registrul de lucru Excel Macro-Enabled format. Această acțiune păstrează codul din registrul de lucru, permițându-vă să-l executați direct în viitor, fără a fi nevoie să reintroduceți sau să reimportați codul.

Creați foldere și subfoldere pe baza valorilor celulelor cu cod VBA

Ocazional, s-ar putea să vă aflați într-o situație în care trebuie să generați nu doar foldere, ci și subfolderele corespunzătoare, toate pe baza datelor din celulele Excel. Pentru a realiza această sarcină, aici, voi introduce un cod VBA.

Pasul 1: Pregătiți datele

Mai întâi, ar trebui să introduceți datele după cum se arată în următoarea captură de ecran, plasați numele folderelor principale în prima coloană și numele subdosarelor în a doua coloană.

Pasul 2: Deschideți editorul de module VBA și copiați codul

  1. Țineți apăsată tasta ALT + F11 tastele în Excel și deschide fișierul Microsoft Visual Basic pentru aplicații fereastră.
  2. Clic Insera > Moduleși lipiți următorul cod în Module Fereastră.
    Cod VBA: creați foldere și subfoldere pe baza valorilor celulelor
    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
    

Pasul 3: Executați codul

  1. După lipirea acestui cod, vă rugăm să apăsați F5 tasta pentru a rula acest cod. În caseta de solicitare, selectați valorile celulelor din care doriți să creați foldere. Și apoi, faceți clic OK.
  2. În următoarea fereastră afișată, specificați calea de destinație pentru a scoate folderele create. Și apoi, faceți clic OK buton, vezi captura de ecran:

Rezultat:

După executarea codului VBA, mergeți la directorul de destinație pentru a vedea rezultatul. Veți descoperi că folderele și subfolderele lor respective, așa cum sunt dictate de valorile celulei, au fost create cu succes după cum se arată în următoarea captură de ecran:

Sfat:
  1. Acest cod este disponibil numai pentru a crea doar folderele principale și subfolderele lor de prim nivel.
  2. Dacă utilizați frecvent acest cod, luați în considerare salvarea registrului de lucru Registrul de lucru Excel Macro-Enabled format. Această acțiune păstrează codul din registrul de lucru, permițându-vă să-l executați direct în viitor, fără a fi nevoie să reintroduceți sau să reimportați codul.

Articole pe aceeaşi temă:

  • Listează toate folderele și subfolderele din Excel
  • Ați suferit vreodată cu această problemă care listează toate folderele și subfolderele dintr-un director specificat într-o foaie de lucru? În Excel, nu există o modalitate rapidă și utilă de a obține simultan numele tuturor folderelor dintr-un anumit director. Pentru a face față sarcinii, acest articol vă poate ajuta.
  • Copiați sau mutați fișiere dintr-un folder în altul pe baza unei liste
  • Dacă aveți o listă de nume de fișiere într-o coloană dintr-o foaie de lucru, iar fișierele se găsesc într-un folder din calculatorul dvs. Dar, acum, trebuie să mutați sau să copiați aceste fișiere ale căror nume sunt listate în foaia de lucru din folderul original în altul, după cum se arată în următoarea captură de ecran. Cum ați putea termina această sarcină cât de repede puteți în Excel?
  • Redenumiți mai multe fișiere ale unui folder
  • Poate că cei mai mulți dintre noi suntem suferiți de această problemă că trebuie să redenumim mai multe fișiere dintr-un folder, pentru a redenumi numele fișierelor unul câte unul ne va înnebuni dacă există sute sau mii de fișiere în acel folder. Există funcții bune pentru a face față acestei sarcini?
Comments (63)
No ratings yet. Be the first to rate!
This comment was minimized by the moderator on the site
níže CZ verze

EN:

A better way to do this in a few seconds is to use cmd (.bat file)

If you have a list of names in excel, add the word MKdir in front of the name (folder name) and if it contains a space put the name in quotes. Then just copy it to notepad, save as and add the .bat extension. Once you have this, substitute the .bat file in the folder where it wants to be created and you're done.

If you want the cmd not to close write at the end of the puase like below

Here is the 3 word code *5* :

start
________
MKdir "Pixie Pin"

pause
________
end


this creates a folder named Pixie Pin in the folder where the command was run

CZ:

Lepší způsob jak to udělat během par sec. je použít cmd (.bat soubor)

Pokud máte seznam jmen v excelu, doplňte pomocí vzorečku slovo MKdir před jmeno (název složky) a pokud obsahuje mezeru dejte název do uvozovek. Poté stačí jen zkopírovat do oznámkového bloku (NotePad), dát uložit jako a dopsat příponu .bat . Jakmile toto máte, supsťte .bat soubor ve složce kde chce aby se vytvořili a máte to.

Pokud chcete aby se cmd nezavřelo napište na konec puase jako je níže

Zde je ten 3 slovný kód *5* :

start
________
MKdir "Pixie Pin"

pause
________
konec


toto vytvoří složku s názvem Pixie Pin ve složce kde byl příkaz spuštěn
This comment was minimized by the moderator on the site
This worked really well, even for someone with zero experience with VBA :-)
Would it be possible to adapt the macro or extend the macro to also create hyperlinks to the folders in the selected cells?
So for instance, Cell A3 is selected and you run the macro and the folder is created. Would it be possible to make cell A3 a hyperlink to the folder by expanding on the macro instead of doing that manually?
This comment was minimized by the moderator on the site
Hello, Marloes
To create hyperlinks for the cell values, the following vba code may help you:

First, please select the cell values, and then run this code, and select a folder for outputting the folders.

Sub MakeFoldersAndAddHyperlinksWithFolderSelection()
    Dim Rng As Range
    Dim maxRows, maxCols, r, c As Integer
    Dim folderPath As String
    Dim baseFolderPath As String
    Dim fd As FileDialog
    Set fd = Application.FileDialog(msoFileDialogFolderPicker)
    
    With fd
        If .Show = -1 Then
            baseFolderPath = .SelectedItems(1) & "\"
        Else
            MsgBox "No folder selected. Operation Cancelled."
            Exit Sub
        End If
    End With
    
    Set Rng = Selection
    maxRows = Rng.Rows.Count
    maxCols = Rng.Columns.Count
    
    For c = 1 To maxCols
        For r = 1 To maxRows
            folderPath = baseFolderPath & Rng.Cells(r, c).Value
            If Len(Dir(folderPath, vbDirectory)) = 0 Then
                MkDir folderPath
                On Error Resume Next
                ActiveSheet.Hyperlinks.Add Anchor:=Rng.Cells(r, c), Address:=folderPath, TextToDisplay:=Rng.Cells(r, c).Value
                On Error GoTo 0
            End If
        Next r
    Next c
End Sub


Please have a try, thank you!
This comment was minimized by the moderator on the site
please, i need that same macro but instead of saving them as folders, i need it to save as Excels.
This comment was minimized by the moderator on the site
is it possible to introduce a condition where if that condition is met the module can create 2 folders (each using a different path)?
if the first list of folders is in the A column then the condition occurs in the U column. The conditional criteria is whether the cell is empty or not.
if the condition is not met the module only makes one folder based on the selection.
This comment was minimized by the moderator on the site
Hi, a_c, sorry I have not found a method can solve this job yet.
This comment was minimized by the moderator on the site
Thank you very much
This comment was minimized by the moderator on the site
Thanks a lot! Your VBA code is really super
This comment was minimized by the moderator on the site
Is it possible to import data from a word to excel on colors algorythme? So, I spell the cities with red and countries with blue in a word, and the to import only these to excel. I don’t know if I made myself clear. Thanks
This comment was minimized by the moderator on the site
Thank you, this has saved me literally days of work.
This comment was minimized by the moderator on the site
Hello,


For the following code it shows error in

MkDir (ActiveWorkbook.Path & "\" & Rng(r, c))



It says Runtime error 76 path not found



Can someone please help me with this?

There are no unsupported characters in the file path.
Not sure what could be the problem

Thanks for the help!
This comment was minimized by the moderator on the site
thank you , time saved
There are no comments posted here yet
Load More
Please leave your comments in English
Posting as Guest
×
Rate this post:
0   Characters
Suggested Locations