3 rychlé metody rekurzivního výpisu všech souborů ve složce Windows v listu aplikace Excel

Sdílej nyní:

Mnoho uživatelů musí rychle zobrazit všechny soubory ve složce Windows a všechny její podsložky v listu aplikace Excel. V tomto článku vám proto představíme 3 rychlé způsoby, jak toho dosáhnout.

Pokud chcete rekurzivně vypsat všechny soubory ve složce Windows v listu aplikace Excel, určitě se vám nelíbí ruční kopírování názvů souborů do aplikace Excel. Nepochybně je to příliš zdlouhavé a časově náročné. Proto vás zde naučíme 3 mnohem chytřejší a pohodlnější přístupy

Metoda 1: Seznam souborů ve složce Windows přes Firefox nebo Google Chrome

  1. Nejprve v Průzkumníkovi Windows otevřete konkrétní složku Windows a zkopírujte cestu ke složce.Kopírovat cestu ke složce
  2. Poté spusťte Firefox nebo Google Chrome.
  3. Dále vložte cestu zkopírované složky do adresního řádku internetového prohlížeče.
  4. Poté stiskněte klávesu „Enter“.
  5. Najednou budou všechny soubory v této složce Windows uvedeny v prohlížeči.Seznam souborů ve Firefoxu
  6. Poté stiskněte „Ctrl + A“ pro výběr veškerého obsahu a „„ Ctrl + C ““ pro zkopírování.
  7. Nakonec je vložte do listu aplikace Excel.Vložte zkopírované uvedené soubory z Firefoxu do aplikace Excel

Metoda 2: Seznam souborů ve složce Windows pomocí „Správce jmen“

  1. Nejprve vytvořte nový list aplikace Excel.
  2. Poté vyberte buňku A1.
  3. Dále přejděte na kartu „Vzorce“ a klikněte na tlačítko „Správce jmen“.
  4. V rozbalovacím dialogovém okně klikněte na tlačítko „Nové“.Jméno Manger
  5. Následně v dalším dialogovém okně zadejte do pole „Název“ „Soubory“.
  6. A v poli „Odkazuje na:“ změňte „= List1! $ A $ 1“ na „= SOUBORY (List1! $ A $ 1)“.Nové jméno
  7. Poté klikněte na „OK“ a zavřete dialogové okno „Správce jmen“.
  8. Později zkopírujte cestu ke složce Windows v buňce A1 a přidejte „\* “Na konci cesty.Zadejte cestu složky do buňky A1
  9. Dále vyberte buňku A3 a zadejte funkci „= INDEX (Files, ROW () - 2)“.Vstupní funkce v buňce A3
  10. Najednou bude uveden soubor v této složce Windows, například následující obrázek.Soubor se zobrazí
  11. Nakonec zkopírujte tuto funkci dolů o několik řádků a vypsejte další soubory, dokud neuvidíte „#REF!“ chyba. Chyba znamená, že byly uvedeny všechny soubory.Funkce kopírování dolů o několik řádků, dokud se nezobrazí chyba

Metoda 3: Rekurzivně vypsat soubory ve složce Windows pomocí aplikace Excel VBA

  1. Pro jakotart, vytvořte nový soubor aplikace Excel.
  2. Dále přejděte do editoru Excel VBA s odkazem na „Jak spustit kód VBA v aplikaci Excel".
  3. Poté zkopírujte následující kód do projektu „ThisWorkbook“.
Sub BatchListAllFiles_FolderSubfolders()
    Dim strWindowsFolder As String
 
    'Select the source Windows folder
    With Application.FileDialog(msoFileDialogFolderPicker)
        .InitialFileName = Application.DefaultFilePath & "\"
        .Title = "Please select a folder to list Files from"
        .InitialFileName = "E:\"
        .Show
        If .SelectedItems.Count > 0 Then
           strWindowsFolder = .SelectedItems(1) & "\"
        End If
    End With
 
    With ActiveSheet
         .Cells(1, 1) = "Name"
         .Cells(1, 1).Font.Bold = True
         .Cells(1, 2) = "Path"
         .Cells(1, 2).Font.Bold = True
         .Cells(1, 3) = "Size(Bytes)"
         .Cells(1, 3).Font.Bold = True
         .Cells(1, 4) = "Type"
         .Cells(1, 4).Font.Bold = True
         .Cells(1, 5) = "Created"
         .Cells(1, 5).Font.Bold = True
    End With
 
    Call LoopFolders(strWindowsFolder)
End Sub

Sub LoopFolders(strFolderPath As String)
    Dim objFileSystem As Object
    Dim objFolder As Object
    Dim objFile As Object
    Dim nLastRow As Integer
 
    Set objFileSystem = CreateObject("Scripting.FileSystemObject")
    Set objFolder = objFileSystem.GetFolder(strFolderPath)
 
    For Each objFile In objFolder.Files
        With ActiveSheet
            nLastRow = .Range("A" & .Rows.Count).End(xlUp).Row + 1
            .Range("A" & nLastRow) = objFile.Name
            .Range("B" & nLastRow) = objFile.Path
            .Range("C" & nLastRow) = objFile.Size
            .Range("D" & nLastRow) = objFile.Type
            .Range("E" & nLastRow) = objFile.DateCreated
            .Columns("A:E").AutoFit
       End With
    Next
 
    'Process all folders and subfolders recursively
    If objFolder.SubFolders.Count > 0 Then
       For Each objSubFolder In objFolder.SubFolders
           'Skip the system and hidden folders
           If ((objSubFolder.Attributes And 2) = 0) And ((objSubFolder.Attributes And 4) = 0) Then
              LoopFolders (objSubFolder.Path)
           End If
       Next
    End If
End Sub

Kód VBA - rekurzivně vypisujte soubory ve složce Windows

  1. Nyní klikněte na první podprogram a stiskněte klávesu „F5“.
  2. V rozbalovacím dialogovém okně přejděte do a vyberte složku Windows, ze které chcete vypsat soubory, a klikněte na „OK“.Vybrat složku
  3. Po dokončení makra se nakonec vraťte do listu aplikace Excel. Byly uvedeny všechny soubory ve složce Windows a jejích podsložkách, jak je znázorněno na následujícím snímku obrazovky.Seznam souborů v aplikaci Excel

Excel občas selhává

Stejně jako jiný software může Excel občas selhat, což může přímo zničit aktuálně otevřený soubor Excel. V takových případech bude většina uživatelů doufat, že aplikace Excel dokáže automaticky obnovit soubor v restart. Realita však častěji není taková, jakou očekáváte. Poté by bylo nezbytné uchýlit se k Oprava aplikace Excel nástroj, jako DataNumen Excel Repair.

Úvod autora:

Shirley Zhang je expertem na obnovu dat DataNumen, Inc., která je světovým lídrem v oblasti technologií pro obnovu dat, včetně obnovit mdf a výhledové softwarové produkty pro opravy. Pro více informací navštivte www.datanumen.com

Sdílej nyní:

Komentáře jsou uzavřeny.