| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > Программирование, связанное с MS Office > Сложный поиск файлов |
| Автор: Mrak 1.6.2007, 15:57 |
| Доброго времени суток! Нужно реализовать на vba и вывести полученный результать в табицу экселя. Имеется вот такая структура папок km\zap\proekt\bank\pr ... еще много таких же ... km\td\proekt\bank\pr Как найти все файлы раслоложенные только в папках bank? Очень надо, помогите пожалуйста ) |
| Автор: RockClimber 1.6.2007, 20:20 | ||||||||
К сожалению, сижу на ноуте с линухом. Дома экселя нет, на виндовую машину надо ставить, а сейчас немного не до того. Поэтому немного теории. Для поиска файлов в VBA используется объект FileSearch. Для начала объявляем переменную:
У объекта FileSearch есть несколько атрибутов, с помощью которых можно задать параметры поиска: папку поиска, расширение файлов, искать во вложенных папках и т. д. (На память названия атрибутов не помню, но в справке все было вроде) Потом выполняем собственно поиск:
Тут я не помню - execute это процедура или функция. Если функция, то строка должна выглядеть так:
Переменная found будет содержать число найденных файлов. После этого (опять провал в памяти) в один из атрибутов объекта FileSearch помещается список имен найденных файлов. В цикле их можно обработать примерно так (надо использовать функцию, которая ищет подстроку в строке; ее название я тоже не помню
Переменная r задает номер строки, в которую будет выводиться имя файла, i - счетчик цикла. Их можно описать любым целым типом (Long, Byte и т. д.) Cells(x,y) - это ячейка экселя в строке x и столбце y. Если до завтрашнего утра никто не напишет ничего более толкового, пойду ставить эксель... |
| Автор: SquarePants 2.6.2007, 14:51 |
| Спасибо, мысль понятна, разберусь )) |
| Автор: RockClimber 2.6.2007, 20:54 |
| SquarePants и Mrak - один человек??? Эксель я так и не поставил. В понедельник на работе освежу воспоминания... |