Перейти к содержимому

Kutools для Office — один пакет. Пять инструментов. Выполняйте больше.

Как вывести список всех файлов в папке и подпапках на лист?

Author Xiaoyang Last modified

При работе с большими наборами файлов, хранящихся в различных папках и подпапках, вам может потребоваться создать полный список всех имен файлов для отслеживания, каталогизации или пакетной обработки. Однако Excel не предоставляет прямого встроенного инструмента для вывода списка всех файлов из папки — включая подпапки — на лист. Это ограничение может создавать сложности, особенно если структура папок сложная или файлы часто обновляются. К счастью, существуют практичные и надёжные методы, которые помогут выполнить эту задачу эффективно в Excel.

В этом руководстве вы узнаете о нескольких подходах к выводу всех имен файлов — включая файлы внутри подпапок — прямо на лист Excel. Также будут предоставлены подробные шаги операций, пояснения параметров и советы по избежанию распространённых ошибок. Эти решения помогут упростить процесс управления файлами и могут быть адаптированы для различных профессиональных или личных задач организации данных.

Быстро и легко вывести все имена файлов в папке и подпапках с помощью Power Query

Быстро и легко вывести все имена файлов в папке и подпапках с помощью Kutools для Excel

Вывод всех имен файлов в папке и подпапках с помощью VBA-кода


Быстро и легко вывести все имена файлов в папке и подпапках с помощью Power Query

В последних версиях Excel встроенную функцию Get Data (Power Query) можно использовать для загрузки списка файлов из папки, включая выбранные атрибуты.

1. Перейдите на вкладку Данные > Получить данные > Из файла > Из папки.

2. Выберите папку, из которой нужно вывести все файлы, затем нажмите Открыть.

Таблица перечисляет все файлы выбранной папки, включая файлы в подпапках.

3. Нажмите Загрузить / Загрузить в, чтобы загрузить список на лист.


Быстро и легко вывести все имена файлов в папке и подпапках с помощью Kutools для Excel

Хотя VBA хорошо справляется с созданием простых списков, это может показаться менее удобным для пользователей, которые не знакомы с кодированием или настройками безопасности макросов в Excel. Кроме того, если вы хотите вывести не только имена файлов, но также отобразить их размеры, типы, даты создания или изменения и другие детальные атрибуты одновременно, дополнение Kutools для Excel предлагает интуитивно понятное и мощное решение.

Инструмент Список имен файлов в Kutools для Excel позволяет собрать информацию о файлах из выбранной папки, а также из всех её подпапок всего за несколько кликов мышью. Этот подход особенно полезен для пользователей, которым требуется дополнительная гибкость, например, фильтрация по типу файлов, создание гиперссылок для быстрого доступа или включение скрытых файлов и папок в результаты. Он особенно полезен при управлении архивами документов, отслеживании мультимедийных библиотек или подготовке инвентаризаций данных для резервного копирования или аудита. Обратите внимание, что перед выполнением следующих шагов необходимо скачать и установить Kutools для Excel.

После завершения установки следуйте этим шагам, чтобы использовать функцию Список имен файлов:

1. Щелкните на вкладке Enterprise в панели инструментов Excel, выберите Импорт и экспорт, затем выберите Список имен файлов из меню. Это откроет диалоговое окно конфигурации.

2. В диалоговом окне Список имен файлов вы можете указать следующие параметры, чтобы настроить вывод списка файлов под ваши нужды:

A: Щелкните значок папки a screenshot of the folder icon чтобы выбрать папку, которую хотите просканировать. Инструмент автоматически включит подпапки, если это необходимо.

B: В разделе Типы файлов выберите «Все файлы», чтобы включить каждый файл независимо от типа, или укажите конкретное расширение файла (например, *.xlsx, *.docx и т.д.), если вас интересуют только файлы определенного типа.

C: В разделе Единицы измерения размера файла вы можете выбрать единицы измерения (например, Байты, КБ, МБ) для более удобного восприятия размеров файлов.

Примечание: Чтобы включить имена файлов из всех подпапок, обязательно отметьте опцию Включить файлы в подкаталогах. Также вы можете отметить Включить скрытые файлы и папки, если хотите добавить их в список. Выбор опции Создать гиперссылки автоматически генерирует кликабельные ссылки на каждый файл и папку, что удобно для быстрого доступа к файлам прямо из листа. Если какие-либо файлы отсутствуют в списке, проверьте настройки фильтров и убедитесь, что файлы не ограничены правами доступа или системными ограничениями.

a screenshot of configuring the Filename List dialog box

3. Нажмите ОК, чтобы сгенерировать список файлов. Все файлы из выбранной папки и её подпапок будут выведены на новый лист вместе с выбранными атрибутами файлов (например, полный путь, размер, тип, дата создания и изменения). Это обеспечивает четкий и организованный обзор, и вы можете использовать привычные функции фильтрации и сортировки Excel для дальнейшего управления данными.

a screenshot listing the details of files of the selected folder

Нажмите, чтобы узнать больше об утилите Список имен файлов.

Скачайте и попробуйте Kutools для Excel прямо сейчас!


Вывод всех имен файлов в папке и подпапках с помощью VBA-кода

По умолчанию Excel не включает встроенную функцию для рекурсивного вывода файлов из папок и их подпапок. Однако вы можете использовать VBA (Visual Basic для приложений), чтобы автоматизировать этот процесс. Использование VBA позволяет продвинутым пользователям расширять возможности Excel, предоставляя гибкость для настройки вывода — например, просто получить имена файлов или включить дополнительные свойства, такие как пути к файлам.

Это решение особенно подходит, если вы уверенно работаете с редактором VBA и вам нужно регулярно автоматизировать процедуры вывода файлов. Оно также полезно для тех, кто хочет сохранить среду Excel чистой, не устанавливая дополнительные надстройки. Однако учтите, что VBA-макросы требуют включения макросов в Excel, что может быть запрещено в высокозащищенных средах. Всегда помните сохранить вашу книгу перед запуском любых макросов, чтобы предотвратить случайную потерю данных, если у вас есть несохраненные изменения.

1. Создайте или активируйте новый лист, куда вы хотите вывести все имена файлов. Убедитесь, что этот лист пуст, чтобы не затирать важные данные.

2. Нажмите ALT + F11, чтобы открыть окно редактора Microsoft Visual Basic для приложений (VBA).

3. В окне VBA щелкните на Вставка в строке меню, затем выберите Модуль. Это действие добавит новый модуль, куда вы сможете вставить ваш VBA-код.

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, чтобы запустить код. Появится диалоговое окно Макросы; выберите имя макроса MainList и нажмите Выполнить. Если у вас есть другой макрос с похожим названием, убедитесь, что вы выбрали правильный.

a screenshot of running the VBA code

5. В появившемся диалоговом окне Обзор перейдите к целевой папке, файлы и подпапки которой вы хотите вывести. Выбор правильной начальной папки важен, так как макрос рекурсивно получит файлы из всех вложенных подпапок.

a screenshot of selecting the folder you want to list all filenames including the subfolders

6. После указания желаемой папки нажмите ОК. Теперь макрос будет обрабатывать папку и все её поддиректории, выводя список всех имен файлов на текущий лист, начиная с ячейки A2. В зависимости от количества файлов и глубины структуры подпапок этот процесс может занять несколько секунд или дольше. Полученный список предоставит подробный обзор содержимого вашей папки.

a screenshot of the seleted folder
a screenshot of an arrow
a screenshot listing all filenames from the selected folder and its subfolders

Если вы получили ошибку, дважды проверьте, существует ли выбранная папка и содержит ли она файлы, и убедитесь, что макросы включены в настройках безопасности Excel. Если вы работаете с большой структурой папок или сетевыми дисками, время обработки может увеличиться, и вы можете столкнуться с ошибками времени ожидания или памяти — попробуйте запустить макрос на меньших подпапках, если это произойдет.

Хотя VBA эффективен для базового вывода файлов, он обычно не захватывает атрибуты, такие как размер файла, дата изменения или владелец файла по умолчанию. Если вам нужны эти дополнительные сведения, рассмотрите возможность редактирования кода или использование альтернативного метода, как описано ниже.


Для достижения наилучших результатов периодически проверяйте и обновляйте свои списки файлов, особенно если содержимое папок часто меняется. Всегда подтверждайте, что у вас есть необходимые разрешения, особенно при сканировании сетевых расположений или общих дисков. Если вы сталкиваетесь с неожиданными результатами, проверьте наличие проблем, таких как скрытые файлы, задержки синхронизации или ограничения доступа к файлам. Если файлы или папки пропущены, попробуйте запустить Excel от имени администратора или использовать упрощённые структуры папок.

Выбор лучшего метода зависит от вашего уровня комфорта, специфических требований и частоты выполнения задачи. У каждого метода есть свои преимущества — вы можете использовать VBA для настройки, Kutools для удобства и дополнительных атрибутов или встроенные функции Windows/Excel для самого простого решения без внешних инструментов. Если проблемы сохраняются, обратитесь к документации Excel или системы для дополнительного устранения неполадок.

Лучшие инструменты для повышения продуктивности в Office

🤖 Kutools AI Aide: Совершенно новый подход к анализу данных благодаря: Интеллектуальное выполнение |  Генерация кода  |  Создание пользовательских формул |  Анализ данных и построение диаграмм  |  Вызов Kutools Functions
Популярные функции: Поиск, выделение или отметка дубликатов | Удалить пустые строки | Объединить столбцы или адреса без потери данных | Округлить ...
Супер ПОИСК: VLOOKUP по нескольким критериям | VLOOKUP по нескольким значениям | Многолистовой поиск | Распознавание нечетких соответствий ...
Расширенный раскрывающийся список: Быстро создать раскрывающийся список | Зависимый раскрывающийся список | Множественный выбор в раскрывающемся списке ...
Менеджер столбцов: Добавить определённое количество столбцов | Переместить столбцы | Переключить видимость скрытых столбцов | Сравнить диапазоны и столбцы ...
Рекомендуемые функции: Сетка фокусировки | Дизайн листа | Улучшенная строка формулы | Управление книгой и листами | Библиотека автотекста | Выбор даты | Объединить данные | Зашифровать/расшифровать ячейки | Отправить письмо по списку | Супер фильтр | Специальный фильтр (фильтр жирный/курсив/зачеркнутый...) ...
Топ15 наборов инструментов:12 текстовых инструментов (Добавить текст, Удалить определенные символы, ...) |50+ типов диаграмм (Диаграмма Ганта, ...) |40+ полезных формул (Расчет возраста на основе даты рождения, ...) |19 инструментов для вставки (Вставить QR-код, Вставить изображение по пути, ...) |12 инструментов преобразования (Преобразовать в слова, Конвертация валюты, ...) |7 инструментов объединения и разделения (Расширенное объединение строк, Разделить ячейки, ...) | ... и многое другое
Используйте Kutools на предпочитаемом вами языке — поддерживает Английский, Испанский, Немецкий, Французский, Китайский и более40 других языков!

Повысьте свои навыки работы в Excel с помощью Kutools для Excel и ощутите эффективность на новом уровне. Kutools для Excel предлагает более300 расширенных функций для повышения производительности и экономии времени. Нажмите здесь, чтобы выбрать функцию, которая вам нужнее всего...


Office Tab добавляет вкладки в Office и делает вашу работу намного проще

  • Включите режим вкладок для редактирования и чтения в Word, Excel, PowerPoint, Publisher, Access, Visio и Project.
  • Открывайте и создавайте несколько документов во вкладках одного окна вместо новых отдельных окон.
  • Увеличьте свою продуктивность на50% и уменьшите количество щелчков мышью на сотни ежедневно!

Все надстройки Kutools. Один установщик

Пакет Kutools for Office включает надстройки для Excel, Word, Outlook и PowerPoint, а также Office Tab Pro — идеально для команд, работающих в разных приложениях Office.

Excel Word Outlook Tabs PowerPoint
  • Комплексный набор — надстройки для Excel, Word, Outlook и PowerPoint плюс Office Tab Pro
  • Один установщик, одна лицензия — настройка занимает считанные минуты (MSI-совместимо)
  • Совместная работа — максимальная эффективность между приложениями Office
  • 30-дневная полнофункциональная пробная версия — без регистрации и кредитной карты
  • Лучшее соотношение цены и качества — экономия по сравнению с покупкой отдельных надстроек