MyTetra Share
Делитесь знаниями!
Запуск и управление приложениями семейства MS Office
29.07.2019
23:55
Текстовые метки: VBA управление приложениями
Раздел: !Закладки - VBA

Запуск и управление приложениями семейства MS Office

Иногда требуется управлять другими приложениями из VBA Excel. Начнем с приложений семейства Microsoft Office. Например, на основе произведенных расчетов в Excel надо сформировать текстовый документ в Word-е. Для начала в нашем проекте надо подключить библиотеку с объектами MS Word:

Tools=>References подключаем последнюю версию библиотеки Microsoft Word Object Library

Пример кода для запуска Word-а из VBA

Dim w As Word.Application
Set w = New Word.Application
w.Visible = True
w.Activate

Вот и все, мы запустили приложение Word. Аналогичным способом можно запустить любое другое приложение из семейства Microsoft Office: Access, Outlook, PowerPoint. Можно получить к любому приложению, которое мы видим списке библиотек. Для работы с внешним приложением необходимо ознакомиться с объектной моделью, изучить свойства и методы объектов. Кроме запуска внешнего приложения, мы имеем полный доступ к объектам данного приложения. Можно писать макросы, которые будут управлять объектами Word  в данном случае.  

Запуск внешнего приложения с помощью скрипта WScript.Shell.

Все очень просто

Sub RunShell()
Set WSShell = CreateObject("Wscript.Shell")
WSShell.Run """C:\Program Files (x86)\Google\Google Earth\client\googleearth.exe""", 1
End Sub

  Главное пишем побольше кавычек (аж три штуки с краю), если путь содержит пробелы и прочие "противные" символы. К сожалению, в данном случае, мы только запускаем внешнее приложение без доступа к его объектам.  

Запуск и управление внешним приложением

В меню VBA=>Tools=>Refernces видно все COM-объекты приложений, которые установлены на вашем компьютере. Подключаем соответствующую библиотеку, например, "GrymCore". И мы получаем доступ к ДубльГису. С документацией API Дубль Гиса можно ознакомиться на их сайте.  

Так же в этом разделе:
 
MyTetra Share v.0.52
Яндекс индекс цитирования