ProgPath = "C:\Program Files\Microsoft Office\OFFICE11\WINWORD.EXE "
iPath = iPathSource 'узнали путь к открываемому файлу
FilePath = ProgPath & Chr(34) & iPath & F & Chr(34)
Shell FilePath
Можно ли из Екселя вызвать процедуру Ворда?
Sub AutoOpen(), который почему-то не всегда запускается (пока не ясно почему). Вот можно ли при таком вызове из Екселя принудительно заставить выполняться вордовский макрос AutoOpen:
Код:
Automation для чего?
Код:
Set doc = GetObject(iPath & F)
doc.Application.Visible = True
doc.RunAutoMacro 2'wdAutoOpen
doc.Application.Visible = True
doc.RunAutoMacro 2'wdAutoOpen
а doc.Run - запустит любой макрос, не только auto..
Цитата: HookEst
А зачем тебе "такой вызов из Екселя"?
Automation для чего?
Automation для чего?
В Ексле я держу сводную таблицу учета ворд-документов, которые приходят в работу. И из Екселя я вызываю проверку наличия на сервере нового дока, и если таковой есть, то заставляю Ворд его открыть, а в ворде уже по названию документа Автоопен-макрос определяет, какими процедурами его обрабатывать. Так вот почему-то в последний раз этот Автоопен срабатывал не каждый раз (странно). Поэтому и подумал, что лучшего автомакрос запускать принудительно, чем надеяться на его "автоматичность".
Код:
Set MyDoc = GetObject(iPath & F)
MyDoc.Application.Visible = True
MyDoc.RunAutoMacro 2 'wdAutoOpen 'работает отлично
'''' MyDoc.Run "Normal.Work.GetDocName" 'пишет:
Object doesn't support property or method.
MyDoc.Application.Visible = True
MyDoc.RunAutoMacro 2 'wdAutoOpen 'работает отлично
'''' MyDoc.Run "Normal.Work.GetDocName" 'пишет:
Object doesn't support property or method.
Т.е. любой макрос не запускается, а только "авто"-исполняемый.
doc.Application.Run "Макрос1"