Как названия папок перевести в excel

Как получить список файлов в Excel с помощью VBA

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

Папка с файлами и каталогами

Давайте рассмотрим несколько способов получения списка файлов.

Способ 1. Использование функции Dir

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

Вот там код данной функции, который выводит на лист 1 перечень файлов.

Тут мы проверяем существование папки с помощью дополнительной функции. Опять таки не используем сторонних библиотек, а используем туже функцию Dir.

Вот так выглядит результат работы функции. Программа записала список файлов на текущий лист Excel.

Вывод списка файлов на лист

Здесь мы не делали проверку на тип файла и вывели все файлы которые у нас были.

Если же необходимо отобрать только определенные типы файлов, например Excel файлы, то в нашем коде необходимо сделать дополнительную проверку:

Знак «*» означает любой набор символов. Таким образом, мы учли различные версии файлов Excel (xls, xlsx, xlsm).

Способ 2. Используем объект FileSystemObject

В данном случае мы будем не просто получать названия файлов, но также определять тип файла, получать его размер и дату создания. Для этого нам потребуется использовать объект FileSystemObject. Он предоставляет нам сведения о файловой системе компьютера.

Однако, чтобы начать его использовать придется подключить одну библиотеку. Не пугайтесь, она есть на всех компьютерах с Windows, потому скачивать ничего не придется. Чтобы подключить ее необходимо:

  1. Открыть пункт меню Tools и выбрать пункт References.
    Открыть пункт меню Tools и выбрать пункт References
  2. Выбрать ссылку на библиотеку Microsoft Scripting Runtime.
    Выбрать ссылку на библиотеку Microsoft Scripting Runtime.
  3. Нажать Ок.

Теперь перейдем к коду. Он немного упростился:

Обратите внимание на переменные. Переменная FSO — это новый экземпляр объекта FileSystemObject. Тут мы его объявляем и сразу создаем. Директива New очень важна, многие тут допускают ошибку. Также создаем объекты MyFolder и iFile — это тоже объекты FileSystemObject

Далее делаем проверку на существование папки. В данном случае нам не нужна дополнительная функция , мы пользуемся методом FolderExists объекта (класса) FileSystemObject.

Ну и остается аналогично перебрать все файлы в директории. Тут удобно использовать цикл For Each — Next.

Результат работы программы следующий:

Получаем список файлов с помощью FileSystemObject

Способ 3. Создаем функцию, которая возвращает файлы в папке и подпапках

Напоследок разберем функцию, которая будет возвращать нам все файлы в текущей папке и во вложенных папках. Вообще это универсальная функция, которая подойдет на все случаи жизни. Смело копируйте ее в свой проект!

Итак перейдем к коду:

Разберем основные моменты этой функции. На вход она принимает один обязательный аргумент — это путь к папке Path. Также может принимать два необязательных параметра:

  • Filter — перечисление списка файлов, которые мы хотим получить. Перечислять необходимо через запятую, например «doc, xls*». Вы можете использовать символ «*» чтобы включить сравнение по шаблону. По умолчанию фильтр отсутствует и возвращаются все типы файлов.
  • Nesting — вложенность. Это максимальное число вложенных папок в которые «проваливается» алгоритм. По умолчанию равно 100.

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

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

Теперь когда наша функция готова, просто используем ее где нам требуется вот так:

Функция нам возвращает коллекцию файлов в папке и подпапках. Вот так:

Список файлов в папке и вложенных папках

Пример файла можете скачать по кнопке ниже и использовать в своей работе. Оставляйте комментарии, буду рад на них ответить.

Можно ли скопировать название папок всех разом?

Простой способ через TotalCommander далее ТС. Открываешь прогу ТС Выделяешь что нужно скопировать (имена) далее в TC жмем Инструменты/ Копировать имена в буфер или другую команду, которая по душе )))

Первые два ответа недостаточно развернуты, упущен важный нюанс, — сначала нужно вбить букву диска и двоеточие — например D: затем нажать enter и проделывать операции выше, а именно

Идешь в Проводник. Заходишь в нужную папку. Щелкаешь по адресной строке и копируешь адрес папки. Теперь запускаешь командную строку (пуск-cmd). Там вбиваешь
«cd адрес_папки» (без ковычек)
Затем когда будет выбрана нужная тебе папка вбиваешь
«dir»
Тебе выкинет название всех файлов и папок. Теперь щелкаешь правой кнопкой по окну ком строки и выбираешь из меню «отметить» или «пометить» (mark) и выбираешь нужные папки затем копировать и вставить в нужное приложение.
Вроде муторно, но на самом деле все очень быстро получается при этом не используя «левые» приложения.

Самый простой способ создания списка файлов, расположенных в папке.

Поделюсь простым проверенным способом создания списка файлов. Пошаговое руководство.

Шаг 1. Войти в папку список файлов из которой вы хотите сформировать.

Папка с файлами

Папка с файлами

Шаг 2. Кликнуть правой кнопкой по пустому полю в папке (не по файлу)

Создать текстовый документ

Создать текстовый документ

Шаг 3. Из выпадающего мену выбрать пункт «Создать»>> «Текстовый документ»

Шаг 4. Открыть появившийся текстовый документ и записать в него три строчки с кодом:

  • chcp 1251
  • echo From Ruexcel.ru %date% %time% >spisok_faylov.txt
  • dir /b /d >> spisok_faylov.txt

Шаг 5. Закрыть с сохранением документ.

Закрыть документ с сохранением

Закрыть документ с сохранением

Шаг 6. Переименовать расширение файла с «TXT» на «BAT» и нажать кнопку «Enter»

Переименовать файл в BAT

Переименовать файл в BAT

Шаг 7. Запустить полученный файл.

Запуск файла и результат

Запуск файла и результат

После запуска .bat файла в папке, из которой вы его запустили появится текстовый документ со списком файлов хранящихся в папке, который будет называться «spisok_faylov.txt».

Готовый список файлов

Готовый список файлов

Перенос списка в программу Excel.

Шаг 1. Открыть текстовый документ.

Шаг 2. Выделить левой кнопкой мыши список.

Выделение списка

Выделение списка

Шаг 3. Нажав правой кнопкой мыши по выделению выбрать пункт «Копировать»

Копирование перечня

Копирование перечня

Шаг 4. Открыть документ Excel.

Вставка в Excel

Вставка в Excel

Шаг 5 Кликнуть правой кнопкой мыши в любую ячейку и выбрать из выпадающего меню пункт «Вставить»

Резултат копирования спискаРезултат копирования списка

Список файлов в папке

Иногда бывает необходимо заполучить на лист Excel список файлов в заданной папке и ее подпапках. В моей практике такое встречалось неоднократно, например:

  • перечислить в приложении к договору на проведение тренинга список файлов из раздаточных материалов для особо щепетильных юристов в некоторых компаниях
  • создать список файлов для ТЗ проекта
  • сравнить содержимое папок (оригинал и бэкап, например)

Для реализации подобной задачи можно использовать несколько способов.

Способ 1. Скелет из шкафа — функция ФАЙЛЫ

Этот способ использует древнюю функцию ФАЙЛЫ (FILES), оставшуюся в Microsoft Excel с далеких девяностых. Вы не найдете эту функцию в общем списке функций, но для совместимости, она всё ещё остаётся внутри движка Excel, и мы вполне можем её использовать.

Механизм таков:

1. В любую ячейку листа (например, в А1) введём путь к папке, список файлов из которой мы хотим получить.

Путь к папке

Обратите внимание, что путь должен оканчиваться шаблоном со звездочками:

  • *.* — любые файлы
  • *.xlsx — книги Excel (только с расширением xlsx)
  • *.xl* — любые файлы Excel
  • *отчет* — файлы, содержащие слово отчет в названии

и т.д.

2. Создадим именованный диапазон с помощью вкладки Формулы — далее кнопка Диспетчер имен — Создать (Formulas — Names Manger — Create). В открывшемся окне введем любое имя без пробелов (например Мои_файлы) и в поле диапазона выражение:

=ФАЙЛЫ(Лист1!$A$1)

Создаем именованный диапазон с функцией ФАЙЛЫ

После нажатия на ОК будет создан именованный диапазон с именем Мои_файлы, где хранится список всех файлов из указанной в А1 папки. Останется их оттуда только извлечь.

3. Чтобы извлечь имена отдельных файлов из созданной переменной, используем функцию ИНДЕКС (INDEX), которая в Excel вытаскивает данные из массива по их номеру:

Список файлов

Если лениво делать отдельный столбец с нумерацией, то можно воспользоваться костылем в виде функции СТРОКИ (ROWS), которая будет подсчитывать количество заполненных строк с начала списка автоматически:

=ИНДЕКС(Мои_файлы; ЧСТРОК($B$3:B3))

Ну, и скрыть ошибки #ССЫЛКА! в конце списка (если вы протягиваете формулу с запасом) можно стандартной функцией ЕСЛИОШИБКА (IFERROR):

=ЕСЛИОШИБКА(ИНДЕКС(Мои_файлы; ЧСТРОК($B$3:B3)); «»)

Важное примечание: формально функция ФАЙЛЫ относится к макро-функциям, поэтому необходимо будет сохранить ваш файл в формате с поддержкой макросов (xlsm или xlsb).

Способ 2. Готовый макрос для ленивых

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

Для добавления макроса в вашу книгу нажмите сочетание клавиш Alt+F11, или кнопку Visual Basic на вкладке Разработчик (Developer), в открывшемся окне редактора Visual Basic вставьте новый модуль через меню Insert — Module и скопируйте туда текст этого макроса:

Sub FileList()
    Dim V As String
    Dim BrowseFolder As String
    
    'открываем диалоговое окно выбора папки
    With Application.FileDialog(msoFileDialogFolderPicker)
        .Title = "Выберите папку или диск"
        .Show
        On Error Resume Next
        Err.Clear
        V = .SelectedItems(1)
        If Err.Number <> 0 Then
            MsgBox "Вы ничего не выбрали!"
            Exit Sub
        End If
    End With
    BrowseFolder = CStr(V)
    
    'добавляем лист и выводим на него шапку таблицы
    ActiveWorkbook.Sheets.Add
    With Range("A1:E1")
        .Font.Bold = True
        .Font.Size = 12
    End With
    Range("A1").Value = "Имя файла"
    Range("B1").Value = "Путь"
    Range("C1").Value = "Размер"
    Range("D1").Value = "Дата создания"
    Range("E1").Value = "Дата изменения"
    
    'вызываем процедуру вывода списка файлов
    'измените True на False, если не нужно выводить файлы из вложенных папок
    ListFilesInFolder BrowseFolder, True
End Sub


Private Sub ListFilesInFolder(ByVal SourceFolderName As String, ByVal IncludeSubfolders As Boolean)

    Dim FSO As Object
    Dim SourceFolder As Object
    Dim SubFolder As Object
    Dim FileItem As Object
    Dim r As Long

    Set FSO = CreateObject("Scripting.FileSystemObject")
    Set SourceFolder = FSO.getfolder(SourceFolderName)

    r = Range("A65536").End(xlUp).Row + 1   'находим первую пустую строку
    'выводим данные по файлу
    For Each FileItem In SourceFolder.Files
        Cells(r, 1).Formula = FileItem.Name
        Cells(r, 2).Formula = FileItem.Path
        Cells(r, 3).Formula = FileItem.Size
        Cells(r, 4).Formula = FileItem.DateCreated
        Cells(r, 5).Formula = FileItem.DateLastModified
        r = r + 1
        X = SourceFolder.Path
    Next FileItem
    
    'вызываем процедуру повторно для каждой вложенной папки
    If IncludeSubfolders Then
        For Each SubFolder In SourceFolder.SubFolders
            ListFilesInFolder SubFolder.Path, True
        Next SubFolder
    End If

    Columns("A:E").AutoFit

    Set FileItem = Nothing
    Set SourceFolder = Nothing
    Set FSO = Nothing

End Sub

Для запуска макроса нажмите сочетание клавиш Alt+F8,или кнопку Макросы (Macros) на вкладке Разработчик (Developer), выберите наш макрос FileList и нажмите кнопку Выполнить (Run). В диалоговом окне выберите любую папку или диск и — вуаля!

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

Cells(r, 2).Formula = FileItem.Path

на

Cells(r, 2).Formula = «=HYPERLINK(«»» & FileItem.Path & «»»)»

Способ 3. Мощь и красота — надстройка Power Query

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

Если у вас Excel 2016 или новее, то Power Query уже встроена в Excel по умолчанию, поэтому просто на вкладке Данные выберите команду Создать запрос / Получить данные — Из файла — Из папки (Create Query / Get Data — From file — From folder). Если у вас Excel 2010-2013, то Power Query нужно будет скачать с сайта Microsoft и установить как отдельную надстройку и она появится у вас в Excel в виде отдельной вкладки Power Query. На ней будет аналогичная кнопка Из файла — Из папки (From file — From folder).

В открывшемся окне нужно будет указать папку, содержимое которой мы хотим получить. После нажатия на ОК Power Query обшарит указанную папку и все вложенные подпапки и выдаст на экран окно с предварительным просмотром результатов:

Предварительный просмотр списка файлов в Power Query

Если внешний вид списка вас устраивает, то можно смело жать внизу кнопку Загрузить (Load), чтобы залить эти данные на новый лист. Если же хочется дополнительно обработать список (удалить лишние столбцы, отобрать только нужные файлы и т.п.), то нужно выбрать команду Изменить / Преобразовать данные (Edit / Transform Data).

Поверх окна Excel откроется окно редактора Power Query, где мы увидим список всех наших файлов в виде таблицы:

Окно Power Query

Дальше возможны несколько вариантов:

  • Если нужны только файлы определенного типа, то их можно легко отобрать с помощью фильтра по столбцу Extension:

    Фильтр по расширению файла

  • Аналогичным образом фильтрами по столбцам Date accessed, Date modified или Date created можно отобрать файлы за нужный период (например, созданные только за последний месяц и т.п.):

    Фильтры по дате

  • Если нужно получить данные не из всех папок, то фильтруем по столбцу Folder Path, чтобы оставить только те строки, где путь содержит/не содержит нужные имена папок:

    Фильтры по пути и папкам

  • Там же можно выполнить сортировку файлов по любому столбцу, если требуется.

После того, как необходимые файлы отобраны, можно смело удалить ненужные столбцы, щелкнув по заголовку столбца правой кнопкой мыши и выбрав команду Удалить (Remove column). Это, кстати, уже никак не повлияет на фильтрацию или сортировку нашего списка:

Готовый список

Если в будущем планируется подсчитывать количество файлов в каждой папке (например, для контроля поступивших заявок или подсчета статистики по заявкам), то имеет смысл дополнительно сделать ещё пару действий:

  • Щелкните правой кнопкой мыши по столбцу Folder Path и выберите команду Дублировать столбец (Duplicate Column).
  • Выделите скопированный столбец и на вкладке Преобразование (Transform) выберите Разделить столбец — По разделителю (Split Column — By delimiter)

Мы получим рядом с нашими данными еще несколько столбцов, где будут продублированы имена вложенных папок — это пригодится нам чуть позже для подсчета статистики с помощью сводной таблицы:

Разделить столбец пути по разделителю

Получившиеся столбцы можно переименовать (Диск, Папка1, Папка2 и т.д.), просто щёлкнув дважды по заголовку каждого.

И, наконец, когда список готов, то его можно выгрузить на лист с помощью команды Главная — Закрыть и загрузить — Закрыть и загрузить в… (Home — Close & Load — Close & Load to…):

Выгруженные на лист результаты

И, само-собой, теперь можно построить по нашей таблице сводную (вкладка Вставка — Сводная таблица), чтобы легко подсчитать количество файлов в каждой папке:

Сводная со статистикой по каждой папке

Дополнительным бонусом можно сделать еще один столбец с функцией ГИПЕРССЫЛКА (HYPERLINK), которая создаст красивые стрелочки-ссылки для моментального перехода к каждому файлу:

Функция ГИПЕРССЫЛКА

Мелочь, а приятно :)

И вдвойне приятно, что в будущем, при изменении содержимого исходной папки, достаточно будет просто щелкнуть мышью по нашей таблице и выбрать команду Обновить (Refresh) — и Power Query выполнит всю цепочку запрограммированных нами единожды действий уже автоматически, отобразив все изменения в составе папки.

Ссылки по теме

  • Что такое макрос, куда вставлять код макроса на Visual Basic
  • Создание резервных копий ценных файлов
  • Что такое Power Query и что можно делать с её помощью

Самый простой способ создания списка файлов, расположенных в папке.

Поделюсь простым проверенным способом создания списка файлов. Пошаговое руководство.

Шаг 1. Войти в папку список файлов из которой вы хотите сформировать.

Папка с файлами

Папка с файлами

Шаг 2. Кликнуть правой кнопкой по пустому полю в папке (не по файлу)

Создать текстовый документ

Создать текстовый документ

Шаг 3. Из выпадающего мену выбрать пункт «Создать»>> «Текстовый документ»

Шаг 4. Открыть появившийся текстовый документ и записать в него три строчки с кодом:

  • chcp 1251
  • echo  From Ruexcel.ru %date% %time% >spisok_faylov.txt
  • dir /b /d >> spisok_faylov.txt
    Записать код в текстовый документ
    Записать код в текстовый документ

Шаг 5. Закрыть с сохранением документ.

Закрыть документ с сохранением

Закрыть документ с сохранением

Шаг 6. Переименовать расширение файла с «TXT» на «BAT» и нажать кнопку «Enter»

Переименовать файл в BAT

Переименовать файл в BAT

Шаг 7. Запустить полученный файл.

Запуск файла и результат

Запуск файла и результат

После запуска .bat файла в папке, из которой вы его запустили появится текстовый документ со списком файлов хранящихся в папке, который будет называться «spisok_faylov.txt».

Готовый список файлов

Готовый список файлов

Перенос списка в программу Excel.

Шаг 1. Открыть текстовый документ.

Шаг 2. Выделить левой кнопкой мыши список.

Выделение списка

Выделение списка

Шаг 3. Нажав правой кнопкой мыши по выделению выбрать пункт «Копировать»

Копирование перечня

Копирование перечня

Шаг 4. Открыть документ Excel.

Вставка в Excel

Вставка в Excel

Шаг 5 Кликнуть правой кнопкой мыши в любую ячейку и выбрать из выпадающего меню пункт «Вставить»

Резултат копирования списка

Резултат копирования списка

FolderStructure.png

Макрос FolderStructure предназначен для вывода в таблице Excel списка файлов и папок (структуры вложенных файлов и подпапок в заданном каталоге).

Пример результата работы макроса показан на скриншоте (щелкните по нему для увеличения)

В настройках макроса задаются:

  • путь к стартовой папке (обязательный параметр)
    Макрос начинает составлять список файлов и папок, начиная с заданной папки
  • маска имени файла
    Позволяет выводить в результат только файлы, название которых соответствует заданной маске
    По умолчанию маска равна * (все файлы)
  • глубина поиска
    Указывает, на сколько уровней подпапок вглубь макрос должен искать файлы
    Если параметр не задан, проверяются все подпапки (без ограничений по вложенности)
  • маски исключаемых файлов
    Опциональный параметр, позволяет исключить некоторые файлы из результата
    Помимо указанных масок (можно задать несколько масок, разделив их символом |), всегда исключаются файлы с названием thumbs.db, а также временные (скрытые) файлы с названием, начинающимся на ~$

Макрос выводит на лист таблицу их следующих столбцов:

  • уровень папки / файла (этот столбец скрыт, он в большинстве случаев не нужен)
    Числовое значение от 0 (корневая папка) до уровня самой глубокой вложенной подпапки
  • тип объекта (папка или файл)
  • имя файла / папки
    Для подпапок, после имени подпапки, указывается информация о содержимом (количество вложенных файлов / подпапок)
  • полный путь (для файлов)
    В этот столбец выводятся гиперссылки на найденные файлы / подпапки
  • дата создания
  • размер папки / файла
     

В пробной версии макроса FolderStructure присутствуют ограничения:

  1. код макроса закрыт от просмотра и редактирования
  2. некоторые символы в именах файлов / папок заменяются на символ *

В полной версии макроса FolderStructure этих ограничений нет:

  • код надстройки открыт, вы можете изменять его как угодно
  • нет привязки к компьютеру, и каких-либо ограничений по использованию
  • стоимость макроса FolderStructure составляет 360 рублей

Порядок покупки макроса FolderStructure:

  1. тестируете макрос на пробной версии (файл прикреплён к статье), и убеждаетесь, что всё работает как вам нужно
  2. оплачиваете 360 рублей любым удобным вам способом
  3. пишете мне на почту или в Скайп, когда и куда оплатили
  4. я проверяю поступление денег (от 2 минут до нескольких часов), и высылаю вам файл FolderStructure.xlsb

Как перечислить все имена файлов из папки и подпапок на листе?

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

  • Перечислите все имена файлов из папки на листе с помощью веб-браузера
  • Перечислите все имена файлов из папки на листе с помощью формулы
  • Перечислите все имена файлов из папки на листе с помощью кода VBA
  • Список всех имен файлов из папки и подпапок на листе с мощной функцией

Перечислите все имена файлов из папки на листе с помощью веб-браузера

Если вы хотите вывести список файлов в папке с помощью веб-браузера, вам следует убедиться, что у вас установлен один из веб-браузеров (Firefox, Opera и Google Chrome) установлен на вашем компьютере. Предположим, вам нужно перечислить файлы следующей папки на листе, см. Снимок экрана: 

1. Зайдите, чтобы скопировать путь к папке (Папка Test) в проводнике. Например, путь к этой папке: C: Users AddinTestWin10 Desktop Folder Test.

2. Откройте один из веб-браузеров (FireFox, Opera и Google Chrome), вставьте путь к папке в адресную строку и нажмите Enter ключ. Смотрите скриншот:

3. Нажмите Ctrl + для выбора всего содержимого в веб-браузере и нажмите Ctrl + C скопировать их.

4. Откройте Excel и вставьте напрямую (используя Ctrl + V ярлыки для вставки) их на лист. Смотрите скриншот:

Заметки:

  • 1. С помощью этого метода могут отображаться только файлы в основной папке, файлы в подкаталоге не могут быть перечислены.
  • 2. Гиперссылки имен файлов недоступны.

Перечислите все имена файлов из папки на листе с помощью формулы

В Excel вы также можете использовать формулу для получения списка всех имен файлов или типа psecifc имен файлов из папки, выполните следующие действия:

1. Скопируйте и вставьте путь к файлу в ячейку, а затем введите * после пути к файлу, как показано ниже:

2, Затем нажмите Формула > Менеджер имен, см. снимок экрана:

3. В Менеджер имен диалоговое окно, нажмите Новинки кнопку, см. снимок экрана:

4. В выскочившем Новое имя диалоговом окне укажите имя в поле Имя и фамилия текстовое поле, а затем введите приведенную ниже формулу в Относится к текстовое поле, см. снимок экрана:

=FILES(Sheet1!$A$1)

Внимание: В этой формуле Sheet1! $ A $ 1 — это ячейка рабочего листа, содержащая путь к файлу, введенный на шаге 1.

5. А затем нажмите OK > Закрыть чтобы закрыть диалоговые окна, а затем введите следующую формулу в пустую ячейку, где вы хотите перечислить имена файлов, и перетащите ручку заполнения вниз, пока не отобразятся пустые ячейки, теперь все имена файлов в указанной папке перечислены, как показано ниже показан снимок экрана:

=IFERROR(INDEX(Filenames,ROW(A1)),»»)

Внимание: В этой формуле Имена файлов это имя диапазона, которое вы создали на шаге 4, и A1 содержит ли ячейка путь к файлу.

Заметки:

  • 1. Вы должны сохранить эту книгу как Excel Macro-Enabled Workbook формат, если вы хотите, чтобы формулы работали нормально после закрытия и повторного открытия файла.
  • 2. Если вы хотите перечислить все файлы с определенным расширением, например, перечислить все имена файлов docx, в этом случае вам просто нужно использовать * docx * вместо *, аналогично для файлов xlsx используйте * xlsx *.


Перечислите все имена файлов из папки на листе с помощью кода VBA

Использование следующего VBA для вывода списка файлов в папке на листе:

1. Откройте рабочий лист и щелкните, чтобы выбрать ячейку, в которую вы хотите поместить имена файлов.

2. Удерживайте ALT + F11 ключи в Excel, и он открывает Microsoft Visual Basic для приложений окно.

3. Нажмите Вставить > Модулии вставьте следующий код в Модули Окно.

Код VBA: перечислить все имена файлов из папки на листе

Sub listfiles()
'Updateby Extendoffice
    Dim xFSO As Object
    Dim xFolder As Object
    Dim xFile As Object
    Dim xFiDialog As FileDialog
    Dim xPath As String
    Dim I As Integer
    Set xFiDialog = Application.FileDialog(msoFileDialogFolderPicker)
    If xFiDialog.Show = -1 Then
        xPath = xFiDialog.SelectedItems(1)
    End If
    Set xFiDialog = Nothing
    If xPath = "" Then Exit Sub
    Set xFSO = CreateObject("Scripting.FileSystemObject")
    Set xFolder = xFSO.GetFolder(xPath)
    For Each xFile In xFolder.Files
        I = I + 1
        ActiveSheet.Hyperlinks.Add Cells(I, 1), xFile.Path, , , xFile.Name
    Next
End Sub

4, Затем нажмите F5 ключ для запуска кода, новое окно Приложения будет отображаться. Выберите папку, в которой должны быть перечислены имена файлов.

5. Затем нажмите OK, файлы в конкретной папке перечислены на листе с гиперссылками. Смотрите скриншот:

Внимание: Могут быть перечислены только имена файлов в основной папке.


Список всех имен файлов из папки и подпапок на листе с мощной функцией

Наблюдения и советы этой статьи мы подготовили на основании опыта команды Список имен файлов полезности Kutools for Excel можно легко создать список файлов из каталога на листе, как показано ниже.    Нажмите, чтобы скачать Kutools for Excel!

документ список всех имен файлов 9

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

После установки Kutools for Excel, пожалуйста, сделайте так:

1. Откройте Excel, нажмите Кутулс Плюс > Импорт / Экспорт > Список имен файлов…, см. снимок экрана:

2. В Список имен файлов диалоговом окне выполните следующие операции:

(1.) Щелкните кнопка списка файлов документов кнопка, чтобы указать папку, в которой находятся файлы, которые вы хотите перечислить;

(2.) Проверьте Включить файлы в подкаталоги возможность перечислить все имена файлов в подпапках или проверить Включать скрытые файлы и папки возможность отображать все имена скрытых файлов, а также имена файлов в скрытых папках;

(3.) Укажите тип файла, который вы хотите указать под Тип файлов раздел;

(4.) Выберите единицу размера файла для отображения из Единица размера файла раздел, который вам нужен.

(5.) Проверьте Создать гиперссылки вариант как вам нужно.

3. Нажмите OK. Он сгенерирует список файлов в каталоге или подкаталоге на новом листе. Смотрите скриншот:

Нажмите, чтобы скачать Kutools for Excel и бесплатная пробная версия прямо сейчас!


Больше относительных статей:

  • Создайте список всех имен рабочих листов из книги
  • Предположим, у вас есть книга с несколькими листами, и теперь вы хотите перечислить все имена листов в текущей книге. Есть ли какой-нибудь быстрый способ создать список имен этих листов в Excel, не вводя их один за другим? В этом руководстве приведены инструкции о том, как составить список имен листов в Excel.
  • Копирование или перемещение файлов из одной папки в другую на основе списка
  • Если у вас есть список имен файлов в столбце на листе, и файлы находятся в папке на вашем компьютере. Но теперь вам нужно переместить или скопировать эти файлы, имена которых указаны на листе, из их исходной папки в другую, как показано на следующем снимке экрана. Как вы могли выполнить эту задачу так быстро, как вы можете в Excel?
  • Получить список имен листов в Google Таблицах
  • В этой статье я расскажу о некоторых методах получения имени текущего имени листа или списка имен листов в таблицах Google.
  • Перемещение между листами с помощью раскрывающегося списка
  • Предположим, у вас есть книга, содержащая несколько листов, теперь вам нужно создать раскрывающийся список или поле со списком, в котором перечислены все имена листов, и когда вы выбираете одно имя листа из раскрывающегося списка, он немедленно переходит на этот лист. В этой статье я расскажу, как перемещаться между листами с помощью раскрывающегося списка в Excel.

Лучшие инструменты для работы в офисе

Kutools for Excel Решит большинство ваших проблем и повысит вашу производительность на 80%

  • Снова использовать: Быстро вставить сложные формулы, диаграммы и все, что вы использовали раньше; Зашифровать ячейки с паролем; Создать список рассылки и отправлять электронные письма …
  • Бар Супер Формулы (легко редактировать несколько строк текста и формул); Макет для чтения (легко читать и редактировать большое количество ячеек); Вставить в отфильтрованный диапазон
  • Объединить ячейки / строки / столбцы без потери данных; Разделить содержимое ячеек; Объединить повторяющиеся строки / столбцы… Предотвращение дублирования ячеек; Сравнить диапазоны
  • Выберите Дубликат или Уникальный Ряды; Выбрать пустые строки (все ячейки пустые); Супер находка и нечеткая находка во многих рабочих тетрадях; Случайный выбор …
  • Точная копия Несколько ячеек без изменения ссылки на формулу; Автоматическое создание ссылок на несколько листов; Вставить пули, Флажки и многое другое …
  • Извлечь текст, Добавить текст, Удалить по позиции, Удалить пробел; Создание и печать промежуточных итогов по страницам; Преобразование содержимого ячеек в комментарии
  • Суперфильтр (сохранять и применять схемы фильтров к другим листам); Расширенная сортировка по месяцам / неделям / дням, периодичности и др .; Специальный фильтр жирным, курсивом …
  • Комбинируйте книги и рабочие листы; Объединить таблицы на основе ключевых столбцов; Разделить данные на несколько листов; Пакетное преобразование xls, xlsx и PDF
  • Более 300 мощных функций. Поддерживает Office/Excel 2007-2021 и 365. Поддерживает все языки. Простое развертывание на вашем предприятии или в организации. Полнофункциональная 30-дневная бесплатная пробная версия. 60-дневная гарантия возврата денег.

вкладка kte 201905


Вкладка Office: интерфейс с вкладками в Office и упрощение работы

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

офисный дно

Понравилась статья? Поделить с друзьями:
  • Как название месяца преобразовать в дату excel
  • Как нажать энтер в ячейке excel
  • Как нажать поиск в excel
  • Как нажать на кнопки в excel
  • Как нажать ввод в ячейке excel