Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Методичка к курсовой работе.doc
Скачиваний:
3
Добавлен:
20.11.2019
Размер:
619.52 Кб
Скачать

Отображение встроенных диалоговых окон

VBA позволяет отображать программно на экране встроенные диалоговые окна в Excel, наряду с пользовательскими диалоговыми окнами. Все встроенные диалоговые окна в Excel образуют семейство Dialogs, индекс которого определяет активизируемое окно. Отображение встроенного диалогового окна на экране осуществляется методом Show. Например, следующая процедура при щелчке на кнопке активизирует диалоговое окно «Открытие документа»:

Private Sub CommandButton2_Click()

Application.Dialogs(xlDialogOpen).Show

End Sub

Значение параметра

Диалоговое окно

xlDialogFindFile

Открытие документа при поиске файла

xlDialogFileDelete

Удалить файл

xlDialogGoalSeek

Подбор параметра

xlDialogSaveAs

Сохранить как

xlDialogSaveWorkbook

Сохранить

xlDialogPrintPreview

Предварительный просмотр

4. Задания для самостоятельной работы Задание 1. Работа со встроенными диалоговыми окнами

Задание 1. Создайте окно сообщения, изображенное на рисунке. Текст макроса изображен рядом.

S ub Начало()

' Начало Макрос

MsgBox "Добрый день", vbOKOnly + vbInformation

End Sub

Записать макрос можно следующим образом:

  • Выберите команду «Начать запись» в подменю Макрос команды Сервис. Задайте имя макроса (Начало)

  • На появившейся панели «Остановка записи» нажмите кнопку «Остановить запись».

  • Выберите команду Сервис - Макрос - Макросы. Выберите имя своего макроса и щелкните по кнопке «Войти».

  • Добавьте строку с назначением параметров функции MsgBox.

Функцию MsgBox также можно использовать, чтобы задать вопрос пользователю и получить ответ. Результат, возвращаемый функцией MsgBox, говорит о том, какая из кнопок была нажата перед закрытием окна.

Задание 2. Создайте окно сообщения, изображенное на рисунке. Текст макроса изображен рядом. Этот макрос содержит сообщение с вопросом, действительно ли пользователь желает выйти из Excel. В зависимости от ответа, либо появляется окно с сообщением, либо происходит выход из Excel (обратите внимание, если нажать кнопку Да, то приложение закрывается без сохранения!)

Sub Выход()

' Выход Макрос

Dim txtСообщение As String, txtЗаголовок As String

Dim Кнопки As Integer, Результат As Integer

txtСообщение = "Вы действительно хотите выйти из Excel?"

txtЗаголовок = "До свидания!"

Кнопки = vbYesNo + vbQuestion + vbfaultButton2

Результат = MsgBox(txtСообщение, Кнопки, txtЗаголовок)

If Результат = vbYes Then

Application.Quit

Else

MsgBox "Выход не состоится", vbOKOnly, "Снова привет!"

End If

End Sub

З адание3. Создайте окно ввода, изображенное на рисунке. Текст макроса изображен рядом. Этот макрос запрашивает имя пользователя, а затем обновляет лист ввода. Предварительно переименуйте рабочий лист (новое название листа – Титульный лист)

Sub Имя()

' Имя Макрос

Dim txtСообщение As String, txtЗаголовок As String

Dim txtРезультат As String, txtПоУмолчанию As String

txtСообщение = "Как ваше имя?"

txtЗаголовок = "Пример окна ввода"

txtПоУмолчанию = "Неизвестный пользователь"

txtРезультат = InputBox (txtСообщение, txtЗаголовок, txtПоУмолчанию)

Worksheets("Титульный лист").Select

Range (“A1”). Select

ActiveCell.Formula = txtРезультат

End Sub