|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
24.02.2009, 21:39 | #1 |
Пользователь
Регистрация: 09.01.2009
Сообщений: 44
|
Поиск нужных файлов по системным дискам
Доброе время суток. Хочу изнать насколько реально реализовать мою задумку. Насколько реально написать макрос, который при первом запуске программы произвел бы поиск нужных файлов для ее работы по системным дисками возможен ли вариант поска по сетевым дискам?
Зараннее спасибо за ответ! |
24.02.2009, 22:20 | #2 | |
Форумчанин
Регистрация: 30.09.2008
Сообщений: 104
|
Цитата:
этот макрос находит все файлы с расш-м .jpg на определенном диске в определ-й директории. выводит в ексел - имя и путь файла Sub findJpgFiles() Cells.Clear ' добав-е заголовков Range("A1:D1").Value = Array("FileName", "Path", "FileName") NextRow = 2 With Application.FileSearch .NewSearch .LookIn = "C:\" .SearchSubFolders = True .Filename = "*.jpg" .Execute FilesToProcess = .FoundFiles.Count For i = 1 To .FoundFiles.Count ThisEntry = .FoundFiles(i) Cells(NextRow, 1).Value = ThisEntry For j = Len(ThisEntry) To 1 Step -1 If Mid(ThisEntry, j, 1) = Application.PathSeparator Then Cells(NextRow, 2) = Left(ThisEntry, j) Cells(NextRow, 3) = Mid(ThisEntry, j + 1) Exit For End If Next j NextRow = NextRow + 1 Next i End With End Sub Последний раз редактировалось mistx; 24.02.2009 в 22:25. |
|
24.02.2009, 22:28 | #3 |
Пользователь
Регистрация: 09.01.2009
Сообщений: 44
|
Подскажите пожалуйста почему на выполнении Application.FileSearch выдает ошибку Object doesn't support this action
|
24.02.2009, 22:54 | #4 |
Форумчанин
Регистрация: 30.09.2008
Сообщений: 104
|
|
25.02.2009, 02:26 | #5 | ||||
Программист VBA
СуперМодератор
Регистрация: 13.07.2008
Сообщений: 6,856
|
Цитата:
Цитата:
Так что, если у Вас Office 2007, придётся использовать другие способы... Посмотрите здесь: http://www.sql.ru/forum/actualthread...&hl=filesearch Или здесь Цитата:
Если написать .LookIn = "c:\": .SearchSubFolders = True: .Filename = "*.bmp", то он находит, к примеру, 27 файлов, а если .LookIn = "c:\windows": .SearchSubFolders = True: .Filename = "*.bmp" - то намного больше (около 400) Почему так - не понял... А у Вас много системных дисков? Вообще-то, системный диск обычно один... Цитата:
Особенно, если искать на сетевых дисках... По сути, работа с сетевыми дисками практически ничем не отличается от работы с локальными. Так что проблем с сетевыми дисками не будет. Лучше просматривать только отдельные диски или папки. Вообще, Application.FileSearch - глючная штука, поэтому я рекомендовал бы Вам использовать FileSystemObject (к тому же, он будет нормально работать на всех версиях Windows и Office)
__Полезные надстройки для Excel. Парсинг сайтов и файлов.
Макросы любой сложности на заказ. Мониторинг цен конкурентов Последний раз редактировалось EducatedFool; 25.02.2009 в 02:28. |
||||
25.02.2009, 19:01 | #6 | |
Форумчанин
Регистрация: 30.09.2008
Сообщений: 104
|
Цитата:
сейчас сделал поиск файлов bmp на диске с - около 5669 в папке windows нашел 407. Вроде все ок. |
|
31.03.2009, 10:15 | #7 |
Пользователь
Регистрация: 19.03.2009
Сообщений: 26
|
Перебор файлов
Госпада помагите...
Ищу файлы с помощью MatchesMask: type TFileName = string; TMatchesMask = function(TFileName:string;mask:stri ng): boolean; if FindFirst(filename, faAnyFile,SearchRec) = 0 then repeat if MatchesMask(searchRec.name,FileName ) then begin n := n + 1; a[n]:=(SearchRec.Name); end; until FindNext(SearchRec) <> 0; При чтении второго условия выдается ошибка - proect.exe raised too many consecutive exceptions : 'access violation at 0x00000000: read of address 0x00000000'. process stoped. В чем дело? Может в объявлении MatchesMask (неправильном), может потомучто в Viste, а может ещё что? |
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
как работать с системным временем | Dinarochka | Помощь студентам | 2 | 27.05.2008 18:28 |
Поиск файлов | student_63 | Общие вопросы Delphi | 6 | 07.03.2008 19:00 |
поиск файлов | KORN | Компоненты Delphi | 3 | 12.10.2007 05:42 |