Особенность этой программы – использование API-функций работы с объектами файловой системы Windows – SHBrowseForFolderи SHGetPathFromlDList. Первая функция отображает стандартное диалоговое окно просмотра дерева папок и возвращает целое значение, идентифицирующее выбранную папку (или О в случае отмены выбора). Вторая функция позволяет определить путь папки, идентифицируемой этим значением.
После написания данного кода в окне выбора макросов станет доступен макрос BrowseFolder. После его выполнения откроется окно Обзор папок, в котором по обычным правилам Windows следует указать путь к требуемой папке и нажать кнопку ОК. В результате на текущем рабочем листе будет сформирован перечень файлов, входящих в состав указанной папки (рис. 3.37).
Для каждой позиции данного списка в соответствующих столбцах указывается имя файла, его размер (в байтах), а также дата и время создания или последнего изменения.
Рис. 3.37. Список файлов
При необходимости можно формировать данный список с указанием полного пути к каждому файлу. В этом случае код макроса будет выглядеть следующим образом (листинг 3.98).