Как перечислить все файлы в папке и подпапках на листе?
Вы когда-нибудь пытались перечислить все имена файлов из папки на листе, включая файлы, расположенные в ее подпапках? Фактически, у нас нет прямого способа перечислить имена файлов из папки и ее подпапок в Excel, однако сегодня я представлю несколько быстрых приемов для решения этой задачи.
Список всех имен файлов в папке и подпапке с кодом VBA
Список всех имен файлов в папке и подпапке быстро и легко с помощью Kutools for Excel
Список всех имен файлов в папке и подпапке с кодом VBA
Обычно в Excel нет встроенной функции для решения этой задачи, но вы можете применить следующий код VBA для решения этой проблемы.
1. Активируйте новый рабочий лист, в котором будут перечислены имена файлов.
2. Удерживайте ALT + F11 ключи в Excel, и он открывает Microsoft Visual Basic для приложений окно.
3. Нажмите Вставить > Модулии вставьте следующий код в Окно модуля.
Код VBA: список всех имен файлов в папке и подпапке
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
4. После вставки кода в модуль нажмите F5 ключ для запуска этого кода и Макрос появится диалоговое окно, выберите Основной список имя макроса, а затем щелкните Run кнопку, см. снимок экрана:
5. И в ЛИСТАТЬ СПИСКИ В окне выберите папку, в которой вы хотите отобразить все имена файлов, включая подпапки, см. снимок экрана:
6. После указания папки нажмите OK кнопку, и все имена файлов в папке и ее подпапках перечислены в текущий рабочий лист из ячейки A2, см. снимки экрана:
Список всех имен файлов в папке и подпапке быстро и легко с помощью Kutools for Excel
С помощью приведенного выше кода вы можете просто перечислить имена файлов, иногда вам нужно указать другие атрибуты, такие как размер файла, тип файла, время создания, содержащая папку и так далее. Kutools for Excel содержит полезную функцию - Список имен файлов, с помощью этой функции вы можете быстро перечислить все или определенные типы имен файлов в папке и ее подпапках.
Kutools for Excel : с более чем 300 удобными надстройками Excel, бесплатно и без ограничений в течение 30 дней. |
После установки Kutools for Excel, выполните следующие действия:
1. Нажмите Предприятие > Импорт Экспорт > Список имен файлов, см. снимок экрана:
2. В Список имен файлов диалоговом окне выполните следующие операции:
A: Нажмите кнопка для выбора папки, в которой вы хотите перечислить имена файлов;
B: Укажите тип файла, который вы хотите отобразить в Тип файлов раздел;
C: Выберите один размер файла, который вы хотите отобразить, из Единица размера файла .
Внимание: Чтобы вывести список имен файлов из подпапки, установите флажок Включить файлы в подкаталоги, вы также можете проверить Включать скрытые файлы и папки как вам нужно. Если вы проверите Создать гиперссылки вариант, он создаст гиперссылки для каждого имени файла и папки.
3. Затем нажмите OK Кнопка, все файлы, содержащиеся в выбранной папке и ее подпапках, были отображены со следующими атрибутами на новом листе. Смотрите скриншот:
Нажмите, чтобы узнать больше об этой утилите «Список имен файлов».
Загрузите бесплатную пробную версию Kutools for Excel прямо сейчас!
Демо: список всех имен файлов в папке и подпапке с помощью Kutools for Excel
Лучшие инструменты для офисной работы
Улучшите свои навыки работы с Excel с помощью Kutools for Excel и почувствуйте эффективность, как никогда раньше. Kutools for Excel предлагает более 300 расширенных функций для повышения производительности и экономии времени. Нажмите здесь, чтобы получить функцию, которая вам нужна больше всего...
Вкладка Office: интерфейс с вкладками в Office и упрощение работы
- Включение редактирования и чтения с вкладками в Word, Excel, PowerPoint, Издатель, доступ, Visio и проект.
- Открывайте и создавайте несколько документов на новых вкладках одного окна, а не в новых окнах.
- Повышает вашу продуктивность на 50% и сокращает количество щелчков мышью на сотни каждый день!