Запуск и управление приложениями семейства 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 Дубль Гиса можно ознакомиться на их сайте.