powered by simpleCommunicator - 2.0.51     © 2025 Programmizd 02
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Как проверить, открыт-ли документ Word программно???
2 сообщений из 2, страница 1 из 1
Как проверить, открыт-ли документ Word программно???
    #32055689
ОлегК
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Мне необходимо делать такую проверку в VB. Я попытался применить такой скрипт:
Код: plaintext
1.
2.
3.
for each aDoc in word.documents
    debug.print aDoc.Name
next aDoc

Но это не работает когда запущено два и более экземпляра Word. В этом случае перебираются только те документы, которые запущены в первом экземпляре. (и вообще как сделать ссылку на конкретный экземпляр приложения, нигде не смог найти ответа, по умолчанию ссылка устанавливается на первый запущенный) Как решить эту проблему?
Заранее благодарен.
...
Рейтинг: 0 / 0
Как проверить, открыт-ли документ Word программно???
    #32055781
IgorM
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
На сколько я знаю, из VBA нельзя получить ссылки на другие копии запущенного приложения, только на первую. Попробуйте использовать функции API GetWindow и GetWindowText для перебора открытых окон и анализа их заголовков. Есть еще такой вариант: если известен полный путь к файлу, то можно использовать GetObject("path_to_file") . При этом, если документ открыт, то будет возвращена ссылка на нужный объект word . Иначе будет запущена новая копия, но свойство Visible у нее будет False . Недостатки этого метода очевидны, исходя из открытия документа: возникнет предупреждение системы безопасности, если документ содержит макросы и т.п.
...
Рейтинг: 0 / 0
2 сообщений из 2, страница 1 из 1
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Как проверить, открыт-ли документ Word программно???
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]