В VBA диалоговые окна работают в режиме модального диалога. Это означает, что пользователь, прежде чем перейти к выполнению действий, не связанных с текущим активным диалоговым окном, должен его закрыть. Закрытие диалогового окна производится методом Hide. Следующая процедура является примером процедуры закрытия диалогового окна. Эта процедура активизируется при нажатии кнопки CommandButton2 диалогового окна UserForm1 и выполняет только одну инструкцию, осуществляющую закрытие этого диалогового окна.
Private Sub CommandButton2_Click()
'
‘ Процедура закрытия диалогового окна
‘
UserForm1.Hide End Sub
Закрыть диалоговое окно также, конечно, можно, нажав системную кнопку, расположенную в правом верхнем углу любого диалогового окна. Если при закрытии диалогового окна необходимо произвести какие-то действия, например считать информацию из окна в файл на диске и т. д., во избежание потери информации, действия, производимые программой при закрытии окна, разумно также продублировать в процедуре обработки события Terminate (закрытие) пользовательской формы.
VBA позволяет отображать программно на экране встроенные диалоговые окна в Excel наряду с пользовательскими диалоговыми окнами. Все встроенные диалоговые окна в Excel образуют семейство Dialogs, индекс которого специфицирует активизируемое диалоговое окно. Отображение встроенного диалогового окна на экране осуществляется методом Show. Например, следующая процедура при нажатии кнопки активизирует диалоговое окно Открытие документа (Open) (рис.).
Private Sub CommandButton1_Click() Application.Dialogs(xlDialogOpen).Show
End Sub
Рис. 31.1 Диалоговое окно
В методе Show можно указывать аргументы, управляющие выводом в диалоговом окне специфицированной информации.
XlDialogFindFile
Диалоговое окно Открытие документа (Open) при поиске файла
xlDialogPivotTableWizard
Диалоговое окно Мастер сводных таблиц (Pivot Table Wizard)
Wizard)
xlDialogSaveAs
Диалоговое окно Сохранить как (Save as)
xlDialogSaveWorkbook
Диалоговое окно Сохранить (Save)
xlDialogPrint
Диалоговое окно Печать (Print)
Объект Application (приложение) является главным в иерархии объектов Excel и представляет само приложение Excel. Он имеет более 120 свойств и 40 методов. Эти свойства и методы предназначены для установки общих параметров приложения Excel. Кроме того, объект Application позволяет вызывать более 400 встроенных функций рабочего листа при помощи конструкции вида:
Application.ФункцияРабочегоЛиста(Аргументы)
Например:
Application . Pi ( )
Вычисление числа п
Application. Pmt (Аргументы)
Определение постоянных периодических платежей при постоянной процентной ставке с помощью функции ППЛАТ (РМТ)
Application . Sum (Аргументы)
Нахождение суммы значений из ячеек диапазона
Приведем несколько наиболее часто используемых свойств, методов и событий объекта Application.