- •9.1. Объектная модель ms Word
- •9.2. Работа с объектными переменными
- •9.3. Объект Application - приложение
- •9.4. Методы объекта Application
- •9.4.1. BuildKeyCode, KeyString - горячие клавиши
- •9.4.2. ChangeFileOpenDirectorу - путь для работы с файлами
- •9.4.3. CleanString - очистка строк
- •9.4.4. Keyboard - программное переключение раскладки
- •9.4.5. ListCommands - справка по горячим клавишам
- •9.4.6. NewWindow - копия окна активного документа
- •9.4.7. OnTime - запуск макросов по расписанию
- •9.4.8. PrintOut - распечатка документов
- •9.4.9. Quit - выход из приложения
- •9.4.11. ScreenRefresh - принудительное обновление экрана
- •9.5. Свойства объекта Application
- •9.5.1. ActiveDocument и другие - активный документ
- •9.5.2. CapsLock - текущее состояние Caps Lock
- •9.5.3. Caption - заголовок окна ms Word
- •9.5.4. CustomizationContext - область сохранения настроек
- •9.5.5. Dialogs - диалоговые окна ms Word
- •9.5.6. DisplayAlerts - управление выводом сообщений
- •9.5.7. EnableCancelKey - запрещаем остановку программы
- •9.5.8. IsObjectValid - проверка объектных переменных
- •9.5.9. KeyBindings - назначаем клавиатурные сокращения
- •9.5.10. NumLock - состояние цифровой клавиатуры
- •9.5.11. RecentFiles - недавно открытые файлы
- •9.5.12. ScreenUpdating - запрет обновления экрана
- •9.5.13. StatusBar - вывод информации в строку состояния
- •9.5.14. System - системная информация
- •9.5.15. Tasks - работа с запущенными приложениями
- •9.5.16. Visible - скрытие окна ms Word
- •9.5.17. Windows - работа с окнами
- •9.6. События объекта Application
9.4.8. PrintOut - распечатка документов
PrintOut предназначен для вывода документов на печать. Например, следующий код (листинг 9.14.) выводит на печать все документы Microsoft Word 2007 (то есть - с расширениями docx иdocm ), расположенные в корневом каталоге диска C.
var_Doc = Dir("C:\*.doc?")
Do While var_Doc <> ""
Application.PrintOut FileName:=var_Doc
var_Doc = Dir()
Loop
Листинг 9.14. Печать всех документов из корневого каталога диска C (html, txt)
Метод PrintOut существует для различных объектов и может принимать множество параметров, управляющих всеми тонкостями печати. Например, с помощью такого кода (листинг 9.15.) мы можем распечатать первые пять страниц текущего документа:
ActiveDocument.ActiveWindow.PrintOut _
Range:=wdPrintFromTo, From:="1", To:="5"
Листинг 9.15. Вывод на печать первых 5 страниц текущего документа (html, txt)
9.4.9. Quit - выход из приложения
Quit используется для выхода из приложения (листинг 9.16.):
Application.Quit
Листинг 9.16. Выход из приложения (html, txt)
9.4.10. Run - запуск макросов
Run позволяет запускать макросы и, при необходимости, передавать им параметры (до 30). При вызове методу Run передается имя, состоящее из имени проекта, имени модуля, и, собственно, имени макроса. Например, запуск макроса MyMacros, расположенного в модуле NewModule проекта Project1 выглядит так (листинг 9.17.):
Application.Run ("Project1.NewModule.MyMacro")
Листинг 9.17. Запуск макроса с помощью метода Run (html, txt)
Параметры, передаваемые макросу, перечисляются после его имени через запятую.
9.4.11. ScreenRefresh - принудительное обновление экрана
ScreenRefresh позволяет принудительно обновить экран. Используется обычно в комбинации с запретом автоматического обновления экрана (свойство Application.ScreenUpdating, его мы рассмотрим ниже). Как правило, обновление экрана делают через некоторые промежутки времени - тогда у пользователя не возникает ощущения, что программа зависла.
Теперь рассмотрим наиболее полезные свойства объекта Application.
9.5. Свойства объекта Application
9.5.1. ActiveDocument и другие - активный документ
ActiveDocument возвращает объект активного документа - того, который открыт в данный момент в Microsoft Word для редактирования. У объекта ActiveDocument есть множество полезных свойств и методов. Мы обсудим их при разговоре об объектеDocument.
Например, в листинге 9.18 мы выводим в окне сообщения имя активного документа.
MsgBox Application.ActiveDocument.Name
Листинг 9.18. Вывод имени активного документа (html, txt)
Надо отметить, что нельзя модифицировать свойство ActiveDocument - то есть не можем с его помощью сделать неактивный документ активным. Чтобы сделать документ активным, используют специальный метод объекта Document.
Существует немало других свойств Application, имена которых начинаются с Active.
ActivePrinter возвращает объект активного принтера - устройства, используемого для печати документов по умолчанию.
ActiveWindow возвращает активное окно - объект типа Window.
