Page 78 - 6735
P. 78
OLE Automation – це основана на COM технологія
міжпроцесової взаємодії, яка дозволяє одній програмі управляти
об’єктами, що реалізовані в іншій програмі [5, 20, 29]. Сервер
автоматизації – це програма (COM сервер), функціональність якої
доступна через COM інтерфейси (такі як IDispatch) іншим
програмам, які називаються клієнтами автоматизації. Для прикладу
VBA-програма (клієнт автоматизації) може використовувати
елементи керування ActiveX (сервери автоматизації). Або можна
використовувати об’єкти Excel із VBA-сценарію Word. Для цього
виберіть в меню Tools/References/Microsoft Excel 11.0 Object Library.
У програмі оголосіть Automation-об’єкт класу
Excel.Application і створіть його функцією CreateObject,
якій потрібно передати програмний ідентифікатор
"Excel.Application". Наступний приклад створює об’єкт
програми Excel, записує значення в комірку першого листа активної
книги, зберігає файл і виходить з Excel.
Public Sub main()
Dim xlApp As Excel.Application
Dim xlBook As Excel.Workbook
Dim xlSheet As Excel.Worksheet
Set xlApp = CreateObject("Excel.Application") ' Excel
xlApp.Workbooks.Add ' нова робоча книга
Set xlBook = xlApp.ActiveWorkbook ' активна книга
'Set xlBook = xlApp.Workbooks.Open("e:\mytestbook.xls") '
або відкрити
Set xlSheet = xlBook.Worksheets(1) ' перший лист
xlSheet.Cells(1, 1).Value = 1 ' записати в комірку
'xlApp.Visible = True ' зробити видимим
xlBook.SaveAs ("e:\mytestbook.xls") 'зберегти як
'xlBook.Save ' або зберегти
xlApp.Quit ' вийти з Excel
End Sub
Microsoft Shell Controls And Automation
78