Visual Basic, .NET, ASP, VBScript
 

   
   
     

Форум - VBA

Страница: 1 |

 

  Вопрос: Беда Добавлено: 04.03.11 15:53  

Автор вопроса:  Владимир
Приветствую!

После установки
Microsoft Office 2007
Перестало исполняться действие FileSearch

Исполнение программы останавливается с сообщением:

Run-time error ‘445’:
Object doesn’t support this action

Более того, браузер операторов, свойств и функций не обнаруживает FileSearch, хотя Help свободно находит это действие и приводит пример его использования.
На компьютерах с Microsoft Office 2003 программа работает без проблем.
Подозреваю неладное с библиотекой Microsoft Office 12.0 Object Library, а заодно и с Microsoft Excel 12.0 Object Library
Все Сервис-паки установлены.

Является ли данная проблема известной, есть ли путь решения?

Ответить

  Ответы Всего ответов: 5  

Номер ответа: 1
Автор ответа:
 VβÐUηìt



Вопросов: 246
Ответов: 3333
 Web-сайт: смекаешь.рф
 Профиль | | #1
Добавлено: 04.03.11 20:50
Что делала функция FileSearch? У меня такое ощущение, что можно запилить свою, смекаешь?

Ответить

Номер ответа: 2
Автор ответа:
 Владимир



Вопросов: 1
Ответов: 3
 Профиль | | #2 Добавлено: 05.03.11 12:27
FileSearch представляет из себя средство поиска файла с заданными атрибутами в заданном каталоге.
Использовалась, соответственно, со свойствами:
.LookIn (где искать)
.FileName (что искать)
.Execute (результат поиска - успех/неудача)
.FoundFiles (массив найденных файлов, удовлетворяющих указанным выше условиям поиска)

Вот пример из Help:
Example
This example searches the My Documents folders for all files that begin with "Cmd" and displays the name and location of each file that’s found.

Visual Basic for Applications
Set fs = Application.FileSearch
With fs
    .LookIn = "C:\My Documents"
    .FileName = "cmd*.*"
    If .Execute > 0 Then
        MsgBox "There were " & .FoundFiles.Count & _
        " file(s) found."
        For i = 1 To .FoundFiles.Count
            MsgBox .FoundFiles(i)
        Next i
    Else
        MsgBox "There were no files found."
    End If
End With


Вообще, полезная штука. Была...
Свою такую пилить даже не начинал пробовать. Думал, проблема известная, спасусь...
Может, в Microsoft Office 2010, или, там других версиях проблема решена?

Ответить

Номер ответа: 3
Автор ответа:
 Владимир



Вопросов: 1
Ответов: 3
 Профиль | | #3 Добавлено: 05.03.11 13:04
FileSearch представляет из себя средство поиска файла с заданными атрибутами в заданном каталоге.
Использовалась, соответственно, со свойствами:
.LookIn (где искать)
.FileName (что искать)
.Execute (результат поиска - успех/неудача)
.FoundFiles (массив найденных файлов, удовлетворяющих указанным выше условиям поиска)

Вот пример из Help:
Example
This example searches the My Documents folders for all files that begin with "Cmd" and displays the name and location of each file that’s found.

Visual Basic for Applications
Set fs = Application.FileSearch
With fs
    .LookIn = "C:\My Documents"
    .FileName = "cmd*.*"
    If .Execute > 0 Then
        MsgBox "There were " & .FoundFiles.Count & _
        " file(s) found."
        For i = 1 To .FoundFiles.Count
            MsgBox .FoundFiles(i)
        Next i
    Else
        MsgBox "There were no files found."
    End If
End With


Вообще, полезная штука. Была...
Свою такую пилить даже не начинал пробовать. Думал, проблема известная, спасусь...
Может, в Microsoft Office 2010, или, там других версиях проблема решена?

Ответить

Номер ответа: 4
Автор ответа:
 Jasmin



Вопросов: 23
Ответов: 417
 Профиль | | #4 Добавлено: 06.03.11 09:12
В Офисе 2007 не стало такой функции (насколько мне известно, разработчики посчитали, что она "коряво" работает. Где-то в Инете есть про это). Поэтому они оставили поддержку функции Dir. Через нее и нужно теперь искать.
Не знаю, как в Офисе 2010, скорее всего не вернули FileSearch.

P.S. Хотя, жаль, что убрали. Было удобно. По крайней мере у меня в прогах глюков не было. Но уже перестроилась на Dir, вроде ничего. :-)

Ответить

Номер ответа: 5
Автор ответа:
 Владимир



Вопросов: 1
Ответов: 3
 Профиль | | #5 Добавлено: 08.03.11 16:06
Спасибо! Хоть не буду больной головой в стену биться.
Если убрали функцию, могли бы и в Help тоже почеркать.
Про Dir подумаю на трезвую голову.

Ответить

Страница: 1 |

Поиск по форуму



© Copyright 2002-2011 VBNet.RU | Пишите нам