Как составить список имен файлов

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

Как сделать список файлов в папке

Содержание

  1. Автоматическое создание списка файлов
  2. Вариант 1: «Командная строка»
  3. Вариант 2: Использование BAT-файла
  4. Вариант 3: DirLister
  5. Вариант 4: Total Commander
  6. Вариант 5: Браузер

Автоматическое создание списка файлов

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

Рассмотрим все имеющиеся способы создания такого списка.

Вариант 1: «Командная строка»

Этот способ является стандартным и не требует от пользователя каких-либо особых умений, за исключением базового владения «Командной строкой». Итак, инструкция к данному варианту выглядит следующим образом:

  1. Перейдите в ту папку, список файлов из которой вы хотели бы получить.
  2. Теперь зажмите Shift на клавиатуре и нажмите правой кнопкой мыши по пустому месту в окне «Проводника».
  3. Должно появится контекстное меню, где требуется выбрать вариант «Запуск командной строки» или «Открыть окно команд здесь». В случае с последними версиями Windows 10 такого пункта может не быть. Вместо этого нужно нажать на «Запустить окно PowerShell здесь». PowerShell – это новый аналог «Командной строки», который Майкрософт активно внедряет в последние версии Windows 10. По сути отличий в функционале нет никаких.
  4. Открытие командной строки через контекстное меню

  5. Теперь вы можете ввести одну из следующих команд:
    • dir /b>spisok.txt Данная команда сохраняет только имена файлов в файл spisok.txt. Вы можете вместо него указать любое другое название, какое вам будет удобно, но учтите, что оно не должно содержать кириллических символов;
    • dir /s>spisok.txt Сохраняет не только имена файлов, содержащихся в папке, но и имена папок и подпапок, которые могут быть расположена в основной папке.
  6. Для применения выбранной команды впишите её и нажмите на Enter.
  7. Ввод команды на создание списка файлов из командной строки

  8. Спустя некоторое время в той папке, в которую вы перешли в первом шаге появится файл с названием spisok.txt или другим, если вы задавали другое. Откройте его с помощью «Блокнота».

Читайте также:
Как изменить расширение файла в Windows
Как изменить файл hosts в Windows
Конвертеры ODT в DOC онлайн

Всю информацию из него можно скопировать в документ Word, так как последний удобнее редактировать. К тому же, если в папке содержались файлы или другие папки в названии которых присутствовали кириллические символы, то в «Блокноте» таковые могут отображаться некорректно, так как нужные кодировки не поддерживаются.

Вариант 2: Использование BAT-файла

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

  1. Создайте в любом месте на компьютере текстовый файл. Для этого нажмите правой кнопкой мыши и в меню выберите пункт «Создать». Из открывшегося подменю выберите вариант «Текстовый файл».
  2. Создание текстового документа

  3. Теперь откройте только что созданный файл при помощи «Блокнота».
  4. Пропишите туда следующий алгоритм:

    chcp 1251

    echo %date% %time% >spisok.txt

    dir /b /d >>spisok.txt

  5. Написание алгоритма для BAT-файла

  6. После исполнения данного BAT-файла в папке, где он был выполнен будет создан текстовый файл spisok.txt, где будет представлен список всех элементов, находящихся в папке. Но для начала вам нужно сохранить этот алгоритм, как BAT-файл. Нажмите в верхнем меню на «Файл», а из контекстного меню выберите вариант «Сохранить как».
  7. Сохранение текстового документа как

  8. В поле «Имя файла» введите spisok.bat, а в «Тип файла» поставьте значение «Все файлы».
  9. Нажмите «Сохранить».
  10. Сохранение текстового файла как BAT-файла

  11. Теперь перенесите созданный BAT-файл в папку, из которой требуется получить список файлов.
  12. Запустите его двойным нажатием левой кнопки мыши.
  13. Появится окно, где будет показано выполнение алгоритма, спустя несколько секунд окно исчезнет, а в папке появится файл spisok.txt, где будет представлен список всех элементов в папке.

Содержимое данного файла также можно перенести в текстовый документ MS Word. Однако в этом случае проблем с кодировкой и неверным отображением кириллических символов не наблюдается.

Вариант 3: DirLister

Данное бесплатное ПО не требуется установки на компьютер и с его помощью вы можете создать список всех элементов в той или иной папке. Инструкция по её использованию выглядит следующим образом:

  1. Перейдите на официальный сайт разработчика и скачайте архив с программой.
  2. Распакуйте архив, вытащив от туда исполняемый EXE-файл.
  3. Запустите его.
  4. Работа с DirLister

  5. Обратите внимание на блок «Directory To Scan». Здесь будет расположен адрес папки, которую нужно просканировать. Выберите её при помощи кнопки «Open».
  6. Откроется окно «Проводника» Windows, где нужно выбрать нужную папку и открыть её.
  7. Теперь перейдите в блок ниже – «Output File». Здесь указывается место для сохранения текстового файла со списком. Нажмите на кнопку «Save as», чтобы указать расположение для сохранения.
  8. В блоке «File Type» можно указать критерии сохранения файлов в список. Например, сохранятся будут только названия файлов с расширением HTML, TXT и т.д. Для этого нужно установить маркеры напротив соответствующих пунктов.
  9. Чтобы начать процедуру создания списка, нажмите на кнопку «Make List», что расположена в нижней части окна.
  10. Спустя некоторое время вы увидите надпись «All file processed correctly», что означает успешное завершение процедуры.

Вариант 4: Total Commander

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

  1. В окне Total Commander откройте нужную папку.
  2. В верхнем меню нажмите на пункт «Выделение». Появится контекстное меню, где нужно нажать на вариант «Выделить всё».
  3. Затем в этом же меню выберите пункт «Копировать имена файлов в буфер обмена».
  4. Окно Total-Commander

  5. Создайте и откройте текстовый документ. Это можно сделать как при помощи простого Блокнота, так и Word или других офисных программ.
  6. Вставьте содержимое буфера обмена на страницу, воспользовавшись комбинацией клавиш Ctrl+V или вызвав контекстное меню и выбрав там соответствующий пункт.

Вариант 5: Браузер

Во всех современных браузерах, будь то Opera, Google Chrome, Yandex и т.д., есть функция просмотра содержимого папок и некоторых файлов, расположенных на компьютере.

Инструкция к этому варианту выглядит следующим образом:

  1. Откройте «Проводник». Выберите при помощи щелчка левой кнопкой мыши ту папку, которую хотите просмотреть в браузере.
  2. Перетащите эту папку в любой удобный для вас браузер. В данном случае рассматривается вариант с Opera.
  3. Открытие списка файлов через браузер

  4. Здесь откроется папка со всем содержимым, которое будет представлено в виде списка. Выделите его и скопируйте, использовав сочетание клавиш Ctrl+C.
  5. Создайте любой текстовый документ и откройте его.
  6. Вставьте скопированный список.

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

spisok-faylov

Вопрос от пользователя

Здравствуйте.

Помогите с одним вопросом… У меня есть несколько внешних дисков и на них записаны фильмы. Я хочу получить список всех названий (имен) этих файлов в тексте, чтобы его распечатать и положить рядом в коробочку с диском (скажем, навести порядок!).

Это серьезно бы облегчило поиск и подключение нужного диска.

Доброго дня!

Эту задачу можно решить несколькими способами (несмотря на то, что я ниже приведу универсальные варианты — в зависимости от вашей версии Windows, часть из них может не сработать…). Так что проверяйте сразу несколько из них… 👌

*

Содержание статьи

    ускорение ПК

  • 1 Способы получить список имен файлов
    • 1.1 Вариант 1 (с помощью Total Commander)
    • 1.2 Вариант 2 (через браузер)
    • 1.3 Вариант 3 (список со вложенными файлами и папками)
      • 1.3.1 Как убрать путь (C:Video) из списка
    • 1.4 Вариант 4 (без доп. софта)
  •  → Задать вопрос | дополнить 

Способы получить список имен файлов

Вариант 1 (с помощью Total Commander)

Наиболее простой и предпочтительный вариант (к тому же точно работающий во всех версиях ОС) — воспользоваться помощью 👉 Total Commander (ссылка на офиц. сайт). Если кто не знает — это спец. программа для работы с файлами (альтернатива проводнику).

Запустив Total Commander, перейдите в нужный каталог (в тот, где у вас хранятся фильмы, например) и выделите все файлы (для этого достаточно нажать Ctrl+A).

Выделяем все файлы в нужном каталоге

Выделяем все файлы в нужном каталоге

Далее в меню «Выделение» выберите опцию «Сохранить выделение в файл…» (в некоторых версиях программы есть возможность скопировать имена файлов в буфер — если сделаете так, то потом откройте документ Word и вставьте список, нажав Ctrl+V).

Сохранить выделение в файл (Total Commander)

Сохранить выделение в файл (Total Commander)

Собственно, полученный текстовый файл можно открыть в любом блокноте (я использую Notepad++), ну и после распечатать список (Ctrl+P) … 👌

Текстовый файл можно открывать - список готов!

Текстовый файл можно открывать — список готов!

*

Вариант 2 (через браузер)

Для этого нам понадобиться запустить какой-нибудь современный 👉 браузер (я проверял на Chrome и Firefox).

После откройте проводник и перейдите в папку с нужными вам файлами — нужно будет скопировать путь до нее, нажать сочетание Ctrl+C (адрес, вида: «C:UsersalexVideosФильмы»)

Открываем каталог

Открываем каталог

После, вставить этот скопированный «путь» в адресную строку браузера и нажать Enter. В результате вы увидите, что обозреватель покажет вам список всех файлов и дату последнего изменения.

Теперь достаточно выделить всё нужное на странице и скопировать это (👇).

Открываем путь в Chrome

Открываем путь в Chrome

Затем скопированный список лучше всего вставить (сочетание Ctrl+V) в Excel (или 👉 его аналоги). Это удобнее тем, что в Excel вы легко сможете удалить ненужные вам столбики (с датой, например) …

Вставляем список в Excel для дальнейшей работы...

Вставляем список в Excel для дальнейшей работы…

*

Вариант 3 (список со вложенными файлами и папками)

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

Например, есть у вас в каталоге «Видео» отдельная папка «Кино 90-х», в которой 2 десятка др. фильмов — вышеперечисленные способы бы не позволили узнать их название (из полученного списка), а этот позволит!

Для работы нам понадобиться 👉 командная строка (ничего сложного там не будет!).

В ней нужно последовательно ввести две команды, после каждой нажать Enter:

  1. cd C:UsersalexVideosФильмы (вместо «C:UsersalexVideosФильмы» укажите свой каталог);
  2. dir /b /s | sort > List.txt (эта команда создаст файл «List.txt» в выбранной вами папке со всеми файлами и каталогами, что в нем есть! Кроме этого, она отсортирует список от А к Я).

CMD - открываем каталог, получаем список

CMD — открываем каталог, получаем список

Файл-список готов!

Файл-список готов!

Как убрать путь (C:Video) из списка

Кстати, если в списке файлов вам среди названия фильмов (файлов) не нужен их путь — то его легко убрать. Для этого в Notepad++ достаточно:

  • нажать на Ctrl+F;
  • в окне «Замена» в строку «найти» указать путь (который повторяется в каждой строке);
  • в строке «Заменить на» проверить, чтобы была пустота;
  • и нажать кнопку «заменить все». В результате: в вашем списке будут только имена (без пути)!

Убираем путь до каталога в блокноте

Убираем путь до каталога в блокноте

*

Вариант 4 (без доп. софта)

Этот способ работает не во всех версиях ОС Windows (в 10-ке все OK). Зато он быстрый и не требует вообще никакого доп. софта…

Что делать:

  1. зайти в нужный каталог;
  2. выделить файлы (Ctrl+A);
  3. зажать клавишу Shift (левую);
  4. нажать ПКМ (правую кнопку мыши), не отпуская Shift;
  5. из появившегося меню проводника выбрать опцию «Копировать как путь». Теперь в буфере обмена есть все имена файлов из каталога!

Выделяем и копируем путь

Выделяем и копируем путь

Теперь можно открыть блокнот или тот же Word и вставить список (Ctrl+V).

Вставляем скопированный список

Вставляем скопированный список

Если вам мешает в каждой строке путь («C:Users») — то как его убрать см. чуть выше.

На этом, думаю, задача решена!? 😉

*

Дополнения по теме приветствуются!

Удачи!

👣

donate

dzen-ya

Полезный софт:

  • видеомонтаж
  • Видео-Монтаж
  • Отличное ПО для создания своих первых видеороликов (все действия идут по шагам!).
    Видео сделает даже новичок!

  • утилита для оптимизации
  • Ускоритель компьютера
  • Программа для очистки Windows от «мусора» (удаляет временные файлы, ускоряет систему, оптимизирует реестр).

Получение списка файлов из папки в WindowsКогда ко мне обратились с вопросом о том, как быстро вывести список файлов в текстовый файл, я понял, что ответа я не знаю. Хотя задача, как оказалось, достаточно часто встречающаяся. Это может потребоваться для передачи списка файлов специалисту (для решения какой-то проблемы), самостоятельного ведения журнала содержимого папок и других целей.

Решено было устранить пробел и подготовить инструкцию на эту тему, в которой будет показано, как получить список файлов (и вложенных папок) в папке Windows средствами командной строки, а также о том, как автоматизировать этот процесс, если задача возникает часто.

Получение текстового файла с содержимым папки в командной строке

Получение списка файлов в командной строке

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

  1. Запустите командную строку от имени администратора.
  2. Введите cd x:folder где x:folder — полный путь к папке, список файлов из которой нужно получить. Нажмите Enter.
  3. Введите команду dir /a /-p /o:gen >files.txt (где files.txt — текстовый файл, в котором будет сохранен список файлов). Нажмите Enter.
  4. Если использовать команду с параметром /b (dir /a /b /-p /o:gen >files.txt), то в полученном списке будет отсутствовать любая дополнительная информация о размерах файлов или дате создания — только список имен.

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

Полученный текстовый файл со списком

Кроме этого, для пользователей русскоязычной версии Windows следует учитывать то, что файл сохраняется в кодировке Windows 866, то есть в обычном блокноте вместо русских символов вы увидите иероглифы (но можно использовать альтернативный текстовый редактор для просмотра, например, Sublime Text).

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

Вы также можете получить список файлов в папке используя команды Windows PowerShell. Если вы хотите сохранить список в файл, то запустите PowerShell от имени администратора, если просто просмотреть в окне — достаточно простого запуска.

Сохранение списка файлов в текстовый файл в PowerSehll

Примеры команд:

  • Get-Childitem -Path C:Folder — вывод списка всех файлов и папок, находящихся в папке Folder на диске C в окне Powershell.
  • Get-Childitem -Path C:Folder | Out-File C:Files.txt — создание текстового файла Files.txt со списком файлов в папке Folder.
  • Добавление параметра -Recurse к первой описанной команде выводит в списке также содержимое всех вложенных папок.
  • Параметры -File и -Directory позволяют получить список только файлов или только папок соответственно.

Список файлов, полученный в PowerShell

Выше перечислены далеко не все параметры Get-Childitem, но в рамках описываемой в этом руководстве задачи, думаю, их будет достаточно.

Утилита Microsoft Fix it для печати содержимого папки

На странице https://support.microsoft.com/ru-ru/kb/321379 присутствует утилита Microsoft Fix It, добавляющая в контекстное меню проводника пункт «Print Directory Listing», выводящий список файлов в папке на печать.

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

Несмотря на то, что программа предназначена только для Windows XP, Vista и Windows 7, она успешно сработала и в Windows 10, достаточно было запустить ее в режиме совместимости.

Дополнительно, на той же странице показан порядок ручного добавления команды вывода списка файлов в проводник, при этом вариант для Windows 7 подойдет и для Windows 8.1 и 10. А если вам не требуется вывод на печать, вы можете немного подправить предлагаемые Microsoft команды, удалив параметр /p в третьей строке и полностью убрав четвертую.

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

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

Содержание:

  1. Сохранение списка файлов с помощью командной строки
  2. Получение списка файлов в папке с помощью bat файла
  3. Программа DirLister для получения списка файлов
  4. Получаем список файлов в Total Commander
  5. Сохранение списка файлов в папке в браузере
  6. Выводы статьи
  7. 3 способа получить список файлов в папке (видео)

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

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

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

В итоге, я нашел несколько простых вариантов решения этой проблемы. Создать список файлов в папке можно разными способами: при помощи командной строки, при помощи файла, который имеет расширение «.bat», при помощи специальных программ, сохранить список в браузере.

Сохранение списка файлов с помощью командной строки

Вначале вам необходимо будет перейти к нужной папке, или диску, если вы хотите получить список файлов, которые находятся на диске. После открытия папки или диска, удерживая на клавиатуре кнопку «Shift», кликните правой кнопкой мыши внутри этой папки. В открывшемся контекстном меню выберите пункт «Открыть окно команд».

открыть окно команд

После этого откроется окно консоли, в которой уже будет указан путь к нужной директории (в вашем случае, будет к той папке, которую вы откроете). В этом примере, это папка «Программы» на Рабочем столе моего компьютера. В этой папке находятся другие папки, в которых находятся ярлыки программ.

командная строка

Далее нужно будет ввести одну из этих команд:

dir /b>filelist.txt
dir /s>filelist.txt

После ввода «dir» должен быть пробел. Вместо «filelist» может написать свое название файла, только латинскими буквами. Не забудьте в конце добавить формат «.txt».

Эти команды отличаются друг от друга в использовании дополнительных критериев сохранения списка файлов:

  • /b — обозначает, что будут сохранены только имена файлов.
  • /s — обозначает, что дополнительно в список будут включены все файлы и подкаталоги (подпапки), которые находятся в этой папке.

ввод команды

Затем на клавиатуре нажмите на кнопку «Enter».

После этого вы можете открыть папку и увидеть, что в папке находится текстовый файл «filelist». Теперь можете открыть этот файл с помощью Блокнота.

Если в данной папке некоторые файлы имели русские имена, то вместо имен этих файлов, вы увидите непонятные символы (крякозябры). Дело в том, что программа Блокнот не понимает кодировку MS-DOS.

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

Кликните по текстовому файлу правой кнопкой мыши, а затем в контекстном меню выберите пункт «Открыть с помощью». Выберите для открытия файла программу Microsoft Office Word. В окне программы Word будет открыто окно «Преобразование текста», в котором нужно будет выбрать кодировку MS-DOS, которая позволит прочитать этот документ.

На образце вы увидите правильное отображение текста.

преобразование файла

После нажатия на кнопку «ОК», данный текст будет открыт в программе Word. Вы можете провести редактирование документа, а потом сохранить его на компьютере в нужном формате, в том числе в формате «TXT». Проблем с кодировкой после сохранения файла уже не будет.

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

Один из самых доступных и простых способов получения списка файлов в папке: использование для этого специального bat файла. Существует несколько вариантов создания файла с расширением «.bat», с разным кодом.

Для создания bat файла вам нужно будет открыть Блокнот, а затем вставить туда этот код:

chcp 1251
echo %date% %time% >filelist.txt
dir /b /d >>filelist.txt

Сохраните этот файл, имя файлу можете дать любое, самому файлу нужно дать расширение «BAT». Параметры сохранения файла в Блокноте будут выглядеть примерно так:

  • Имя файла: filelist.bat
  • Тип файла: Все файлы

После этого нажмите на кнопку «Сохранить».

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

Существует несколько вариантов содержимого файла с расширением «.bat». При использовании этого метода, проблем с кодировкой не возникнет.

Программа DirLister для получения списка файлов

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

DirLister скачать

Для запуска программы, откройте папку с программой, а потом кликните по приложению DirLister.

В окне программы DirLister, в разделе «Directory To Scan», при помощи кнопки «Open», вам нужно будет выбрать папку для сканирования.

В разделе «Output File», при помощи кнопки «Save As…», вам необходимо будет выбрать место для сохранения списка файлов.

Вы можете уточнить критерии поиска файлов по маске «*.*», выбрав нужное имя или тип файла («TXT», «Excel», «HTML» и т. д.). После выбора необходимых настроек, нажмите на кнопку «Make List».

программа dirlister

После завершения сканирования в левом нижнем углу программы будет выведена информация об успешном завершении создания списка файлов: «All file processed correctly».

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

Получаем список файлов в Total Commander

Получить список файлов в папке можно при помощи популярного файлового менеджера Total Commander. Для этого, открываете в окне программы нужную папку.

В меню «Выделение», сначала выбираете пункт «Выделить всё». После того, как все файлы были выделены, в этом же меню выбираете пункт «Копировать имена в буфер».

программа total commander

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

Вы можете в меню «Выделение» выбрать пункт «Сохранить выделение в файл…». В этом случае, вам нужно будет дать имя файлу, а затем сохранить его в формате «TXT».

Сохранение списка файлов в папке в браузере

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

Далее можете просто скопировать список файлов в текстовый редактор, сохранить список в HTML файл, или сохранить в PDF при помощи виртуального принтера.

сохранение списка файлов в браузере

Выводы статьи

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

3 способа получить список файлов в папке (видео)

Похожие публикации:

  • Как скопировать текст в окне Windows или в окне программы
  • Как убрать рекламу в Skype
  • Как убрать рекламу из µTorrent
  • Как узнать пароль от своего Wi-Fi на компьютере
  • Как навести порядок на своем компьютере

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

Иногда бывает необходимо заполучить на лист 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 и что можно делать с её помощью

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