Как получить список имен файлов, содержащихся в папке, а затем отобразить этот список на листе Excel
В этой статье будет рассказано, как получить список имен файлов, содержащихся в каталоге, а затем отобразить этот список на листе. Данный способ связан с использованием макрофункции Excel 4 XLM в именованной формуле. Такой метод удобен, поскольку позволяет относительно легко выстроить на листе список имен файлов — обычно для этого требуются сложные макросы VBA.
Откройте новую книгу, а затем выполните следующие действия для создания именованной формулы.
Выполните команду Формулы ► Присвоить имя, чтобы открыть диалоговое окно Создание имени.
Впишите в поле Имя название Список.
Введите следующую формулу в поле Диапазон (рис. 8.1): =ФАЙЛЫ(Лист1!$A$1).
Нажмите ОК, чтобы закрыть окно Создание имени.
Обратите внимание: функция ФАЙЛЫ не относится к стандартным функциям рабочего листа. Это макрофункция, написанная в сравнительно старом XLM-стиле и предназначенная для использования на специальном листе макросов. Она принимает один аргумент (путь к каталогу и описание файла) и возвращает массив имен файлов, содержащихся в данном каталоге и удовлетворяющих описанию файла. Обычные формулы рабочего листа не могут использовать подобные XLM-функции, а именованные формулы — могут.
Определив именованную формулу, введите в ячейку А1 путь к каталогу и описание файла. Например: C:\Excelexpert.ru\* *. Далее формула отображает первый найденный файл: =ИНДЕКС(Список;1). Если изменить второй аргумент на 2, то будет отображен второй найденный файл и т. д. На рис. 8.2 приведен пример. Путь и описание файла указаны в ячейке А1. В ячейке А2 содержится следующая формула, скопированная далее по столбцу: =ИНДЕКС(Список;СТР0КА()-1). Функция СТРОКА, используемая здесь, генерирует ряд последовательных натуральных чисел: 1,2,3 и т. д. Эти числа используются в качестве второго аргумента функции ИНДЕКС.
Рис. 8.2. Использование XLM-макроса в именованной формуле позволяет создать на листе список имен файлов
Рис. 8.2. Использование XLM-макроса в именованной формуле позволяет создать на листе список имен файлов
Обратите внимание: в ячейке А17 (и ниже) происходит ошибка. Дело в том, что в каталоге содержится всего 19 файлов и формула пытается отобразить имена несуществующих. Если изменить каталог или описание файла в ячейке А1, то формулы обновляются и выводят имена новых файлов.
Если вы пользуетесь такими приемами, то книгу нужно сохранить как файл с поддержкой макросов (в формате *.xlsm или *.xls).
http://excelexpert.ru/kak-poluchit-spisok-imen-fajlov-soderzhashhixsya-v-papke-a-zatem-otobrazit-etot-spisok-na-liste-excel
В этой статье будет рассказано, как получить список имен файлов, содержащихся в каталоге, а затем отобразить этот список на листе. Данный способ связан с использованием макрофункции Excel 4 XLM в именованной формуле. Такой метод удобен, поскольку позволяет относительно легко выстроить на листе список имен файлов — обычно для этого требуются сложные макросы VBA.
Откройте новую книгу, а затем выполните следующие действия для создания именованной формулы.
Выполните команду Формулы ► Присвоить имя, чтобы открыть диалоговое окно Создание имени.
Впишите в поле Имя название Список.
Введите следующую формулу в поле Диапазон (рис. 8.1): =ФАЙЛЫ(Лист1!$A$1).
Нажмите ОК, чтобы закрыть окно Создание имени.
Обратите внимание: функция ФАЙЛЫ не относится к стандартным функциям рабочего листа. Это макрофункция, написанная в сравнительно старом XLM-стиле и предназначенная для использования на специальном листе макросов. Она принимает один аргумент (путь к каталогу и описание файла) и возвращает массив имен файлов, содержащихся в данном каталоге и удовлетворяющих описанию файла. Обычные формулы рабочего листа не могут использовать подобные XLM-функции, а именованные формулы — могут.
Определив именованную формулу, введите в ячейку А1 путь к каталогу и описание файла. Например: C:\Excelexpert.ru\* *. Далее формула отображает первый найденный файл: =ИНДЕКС(Список;1). Если изменить второй аргумент на 2, то будет отображен второй найденный файл и т. д. На рис. 8.2 приведен пример. Путь и описание файла указаны в ячейке А1. В ячейке А2 содержится следующая формула, скопированная далее по столбцу: =ИНДЕКС(Список;СТР0КА()-1). Функция СТРОКА, используемая здесь, генерирует ряд последовательных натуральных чисел: 1,2,3 и т. д. Эти числа используются в качестве второго аргумента функции ИНДЕКС.
Рис. 8.2. Использование XLM-макроса в именованной формуле позволяет создать на листе список имен файлов
Рис. 8.2. Использование XLM-макроса в именованной формуле позволяет создать на листе список имен файлов
Обратите внимание: в ячейке А17 (и ниже) происходит ошибка. Дело в том, что в каталоге содержится всего 19 файлов и формула пытается отобразить имена несуществующих. Если изменить каталог или описание файла в ячейке А1, то формулы обновляются и выводят имена новых файлов.
Если вы пользуетесь такими приемами, то книгу нужно сохранить как файл с поддержкой макросов (в формате *.xlsm или *.xls).
http://excelexpert.ru/kak-poluchit-spisok-imen-fajlov-soderzhashhixsya-v-papke-a-zatem-otobrazit-etot-spisok-na-liste-excel
Комментариев нет:
Отправить комментарий