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

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

1. *.* – все файлы;

2. *.xl* – все файлы Excel (xls, xlsx, xlsm, xlsb и т.д.);

3. *.exe – все исполняемые файлы (программы);

4. *.docx (doc, docm) – все документы Word. Добавив ключевое слово Рок*.docx в список войдут все названия файлов, начинающиеся со слова «Рок».

Получение списка файлов в папке Microsoft Excel, Таблица, Полезное, Лайфхак, На заметку, Длиннопост

Дальше нажатием Ctrl+F3 или на вкладке «Формулы» - «Диспетчер имён», в открывшемся окне создадим новое имя Список_файлов и введём в строку Диапазон следующую формулу =ФАЙЛЫ(Лист1!$A$1) где «Лист1» – это название листа, а «А1» – ячейка с адресом

Получение списка файлов в папке Microsoft Excel, Таблица, Полезное, Лайфхак, На заметку, Длиннопост

Теперь в созданном нами названии «Список_файлов» уже содержатся нужные имена файлов, осталось их оттуда извлечь. Для этого используем в ячейке А3 следующую формулу и протянем её вниз: =ЕСЛИОШИБКА(ИНДЕКС(Список_файлов;СТРОКА()-2);””)

Получение списка файлов в папке Microsoft Excel, Таблица, Полезное, Лайфхак, На заметку, Длиннопост

Функция ЕСЛИОШИБКА нужна, чтобы спрятать ошибку #ССЫЛКА, которая возникает, когда мы протягиваем формулу "с запасом", т.е. на больший по размеру диапазон, чем количество имеющихся у нас файлов.


Функция ИНДЕКС извлекает из массива элемент по номеру, например, формула =ИНДЕКС(Список_файлов; 5) выдаст имя пятого по счету файла в папке.


Функция СТРОКА, выдает порядковый номер текущей строки, из которого мы вычитаем 2, т.к. первая ячейка, куда выводится имя, в нашем случае А3.

MS, Libreoffice & Google docs

719 постов15K подписчика

Добавить пост

Правила сообщества

1. Не нарушать правила Пикабу

2. Публиковать посты соответствующие тематике сообщества

3. Проявлять уважение к пользователям

4. Не допускается публикация постов с вопросами, ответы на которые легко найти с помощью любого поискового сайта.

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


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

Утверждения вроде "пост - отстой", это оскорбление автора и будет наказываться баном.

Вы смотрите срез комментариев. Показать все
6
Автор поста оценил этот комментарий

Ловите плюсик за Раммштайн)) ну и за полезную информацию, конечно!

раскрыть ветку (9)
5
Автор поста оценил этот комментарий

Rammstein uber allen

раскрыть ветку (7)
DELETED
Автор поста оценил этот комментарий

Приветствую Вас! Помогите пожалуйста в решение проблемы с Excel. Наверно, вопрос для Вас очень глуп, но ответа я пока не нашла (возможно его и нет). Есть ссылка на ячейку 'C:\Папка\Папка2\Папка3\[название книги).xlsx]Лист1'!A18. Можно ли "название книги" заменить формулой, а точнее ссылкой на другую ячейку (где будет название книги). Функция ДВССЫЛ не подходит. Вы спасете много моего времени и возможно нервы многих людей.

раскрыть ветку (4)
1
Автор поста оценил этот комментарий
Здравствуйте, что-то я не могу придумать решения, у меня сейчас компьютера нет, чтобы проверить((
Попробуйте задать этот вопрос на сайте планета эксель
раскрыть ветку (3)
DELETED
Автор поста оценил этот комментарий

Спасибо большое за отклик! Проблему решила.

раскрыть ветку (2)
1
Автор поста оценил этот комментарий
Такой вариант возможен?
раскрыть ветку (1)
1
DELETED
Автор поста оценил этот комментарий

Нет )). Идея изначально была глупой. Найден совершенно другой логический выход.

Автор поста оценил этот комментарий

Если в ячейках стоит 5*8 и так весь столбец текстовый, можно ли быстро все это преобразовать в формулу =5*8 ?

раскрыть ветку (1)
Автор поста оценил этот комментарий
Можно )))
Посмотрите двссыл()
Автор поста оценил этот комментарий
Раааадиииооо!
Вы смотрите срез комментариев. Чтобы написать комментарий, перейдите к общему списку