Домашняя страница Undo Do Save Карта сайта Обратная связь Поиск по форуму
МИР MS EXCEL - Гость.xls

Вход

Регистрация

Напомнить пароль

 

= Мир MS Excel/Проверка, открыт ли Ворд - Мир MS Excel

Старая форма входа
  • Страница 1 из 1
  • 1
Модератор форума: _Boroda_, китин  
Проверка, открыт ли Ворд
Spirtuoz Дата: Воскресенье, 31.01.2021, 11:47 | Сообщение № 1
Группа: Пользователи
Ранг: Новичок
Сообщений: 10
Репутация: 0 ±
Замечаний: 0% ±

Добрый день! Столкнулся с таким вопросом.

Данный код открывает целевой документ Word
[vba]
Код
Set wd = New Word.Application
Set wdDoc = wd.Documents.Open _
(ThisWorkbook.Path & "\" & "Акт.docm")
wd.Visible = True
[/vba]

Однако, если данный документ уже открыт, макрос зависает. Как сделать, чтобы он проверял, открыт ли данный файл ("Акт.docm") и
- если открыт, то переходил к следующему действию
- если закрыт то использовался код выше и переходил к следующему действию.

Надеюсь на вашу помощь.
 
Ответить
СообщениеДобрый день! Столкнулся с таким вопросом.

Данный код открывает целевой документ Word
[vba]
Код
Set wd = New Word.Application
Set wdDoc = wd.Documents.Open _
(ThisWorkbook.Path & "\" & "Акт.docm")
wd.Visible = True
[/vba]

Однако, если данный документ уже открыт, макрос зависает. Как сделать, чтобы он проверял, открыт ли данный файл ("Акт.docm") и
- если открыт, то переходил к следующему действию
- если закрыт то использовался код выше и переходил к следующему действию.

Надеюсь на вашу помощь.

Автор - Spirtuoz
Дата добавления - 31.01.2021 в 11:47
Pelena Дата: Воскресенье, 31.01.2021, 23:44 | Сообщение № 2
Группа: Админы
Ранг: Местный житель
Сообщений: 19409
Репутация: 4558 ±
Замечаний: ±

Excel 365 & Mac Excel
Здравствуйте.
Как вариант
[vba]
Код
Sub www()
    Dim WApp As Object, WDoc As Object
    On Error Resume Next
    Set WApp = GetObject(, "Word.Application")
    If WApp Is Nothing Then Set WApp = CreateObject("Word.Application")
    Set WDoc = WApp.Documents("Акт.docm")
    If WDoc Is Nothing Then Set wdDoc = WApp.Documents.Open(ThisWorkbook.Path & "\" & "Акт.docm")
    WApp.Visible = True
    On Error GoTo 0
End Sub
[/vba]


"Черт возьми, Холмс! Но как??!!"
Ю-money 41001765434816
 
Ответить
СообщениеЗдравствуйте.
Как вариант
[vba]
Код
Sub www()
    Dim WApp As Object, WDoc As Object
    On Error Resume Next
    Set WApp = GetObject(, "Word.Application")
    If WApp Is Nothing Then Set WApp = CreateObject("Word.Application")
    Set WDoc = WApp.Documents("Акт.docm")
    If WDoc Is Nothing Then Set wdDoc = WApp.Documents.Open(ThisWorkbook.Path & "\" & "Акт.docm")
    WApp.Visible = True
    On Error GoTo 0
End Sub
[/vba]

Автор - Pelena
Дата добавления - 31.01.2021 в 23:44
  • Страница 1 из 1
  • 1
Поиск:

Яндекс.Метрика Яндекс цитирования
© 2010-2024 · Дизайн: MichaelCH · Хостинг от uCoz · При использовании материалов сайта, ссылка на www.excelworld.ru обязательна!