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

Оператор вывода информации MsgBox

Оператор MsgBoxявляется простейшей формой экранного выхода, которую можно включать в процедурыVBA.

Оператор MsgBoxподобен встроенной вVBAпроцедуре.

Sub Name()

MsgBox "Promt", [Buttons As VbMsgBoxStyle = vbOKOnly], [Title], [HelpFile], [Context]) As VbMsgResult

End Sub

Строка в процедуре Name(), содержащая операторMsgBox, сообщаетVBA, что необходимо вызвать эту встроенную процедуру. Текст, заключенный в кавычки, – это текст сообщения, которое должно отображаться с помощьюMsgBox.

Оператор MsgBoxимеет несколько аргументов. Первый аргументPromtявляется текстом, который должен быть отображен в выводимом диалоговом окне посредствомMsgBox. Пример синтаксиса оператораMsgBox(рис. 5):

Рис. 5. Пример реализации оператора MsgBox

Sub Privet()

MsgBox "Привет!!!", , "Окно приветствия!"

End Sub

Текст "Привет!!!" является аргументом для процедуры MsgBox. Двойные кавычки в аргументе "Привет!!!" указывают на то, что текст, заключенный в них является данными для процедуры, а не инструкциями, которые должен выполнитьVBA.

Второй аргумент оператора MsgBoxButtons As VbMsgBoxStyle = vbOKOnlyявляется необязательным; в данном примере необязательный второй аргумент опущен. Поскольку необязательный аргумент опускается, в списке аргументов имеется один символ пробела. За символом пробела следует запятая, чтобы отделить его от следующего аргумента в списке. Если вы не введете символ пробела,VBAдобавляет его.

Необязательный второй аргумент в операторе MsgBox– это аргументButtons. Он определяет, сколько и какого типа командные кнопки появляются в диалоговом окне, отображаемом посредствомMsgBox. Когда необязательный второй аргумент опущен (как в данном примере), диалоговое окно содержит только одну кнопку –OK.

Третий аргумент Titleв оператореMsgBoxопределяет заголовок диалогового окна. Подобно первому аргументу текст, для строки заголовка диалогового окна заключается в кавычки. Таким образом, процедураPrivet()выведет на экран следующее диалоговое окно:

Оператор ввода информации от пользователя InputBox

Полученные данные от пользователя, сохранение их в переменной и отображение результатов действий, выполненных над ними, являются основными элементами, необходимыми для написания интерактивных процедур. (Интерактивная процедура – это процедура, обменивающаяся информацией с пользователем; то есть процедура взаимодействует с пользователем, отображая сообщения и получая ввод).

Данные, вводимые пользователем, называются входными данными (input). Чтобы получить входные данные от пользователя процедуры, необходимо использовать функциюInputBox. (функция – это особый тип процедурыVBA, отображающая значение.) ФункцияInputBoxотображает диалоговое окно, содержащее текст, который запрашивает пользователя ввести некоторое значение и текстовое окно для ввода этого значения. ФункцияInputBoxимеет следующий синтаксис:

Sub Name()

InputBox(prompt[, title] [, default] [, xpos] [, ypos] [, helpfile, context])

End Sub

Аргумент Prompпредставляет любое строковое значение.InputBoxотображает эту строку как запрос в диалоговом окне; необходимо всегда представлять аргументPromt, поскольку это обязательный аргумент.

Аргумент Titleявляется необязательным вторым аргументом дляInputBox.Titleпредставляет любое строковое значение.InputBoxотображает текст этой строки в строке заголовка диалогового окна. Если опустить аргументTitle,VBAотображает в строке заголовка диалогового окнаInputBoxназвание открытого приложения.

Пример реализации оператора InputBoxприведен на рис. 6.

Рис. 6. Пример реализации оператора InputBox

Здесь переменной stringvarприсваивается значение, вводимое пользователем с клавиатуры. ФункцияInputBoxвыводит на экран диалоговое окно (Рис. 7), в которое вводится необходимое значение. После нажатия кнопкиOKпеременнойstringvarприсваивается введенное значение.

Результат функции InputBoxвсегда является строкой. Если пользователь выбирает командную кнопкуOK, функцияInputBoxвозвращает то, что пользователь ввел в текстовое окно, в качестве результата. Если пользователь выбирает командную кнопкуCancel(или нажимаетEsc, или использует кнопкуCloseдиалогового окна),InputBoxв качестве результата возвращает пустую строку. Если вводимые данные будут использованы в математических вычислениях, следует использовать встроеннуюVBA-функциюCSngдля преобразования пользовательских данных ввода в число с типомSingle.

_____________________________

Рекомендуемая литература

  1. Кузьменко В. Г. VBA2002. М.: ЗАО "БИНОМ", 2002.

  2. Мамонтов Д. В. QuickBasicв задачах и примерах. СПб.: Питер, 2006.

  3. Гусева А. И. Учимся информатике: задачи и методы их решения. М.: "Диалог-МИФИ", 1998.

  4. Зельднер Г. А. Программируем на языке QuickBASIC4.5. М.: ABF, 1996.

  5. Зельднер Г. А. Microsoft BASIC Professional Development System 7.1. Руководство программиста. М.: ABF, 1996.

  6. Алиев В. К. Языки Basic. М.: Солон-Р, 2000

  7. Назаров С. В., Мельников П. П. Программирование на MSVisualBasic. М.: Финансы и статистика, 2002.

Валерий Валентинович Косулин

Мария Вячеславовна Долонина

БАЗОВЫЕ СТРУКТУРЫ ПРОГРАММИРОВАНИЯ. ЦИКЛ.

Лабораторная работа по курсу

"Информатика"

(Кафедра Информатики и информационных управляющих систем КГЭУ)

Редактор издательского отдела Н. И. Андронова

________________________________________________________________

Изд. лиц. № 03480 от 8.12.00 Темплан издания КГЭУ 2006 г.

Подписано к печати Формат 60 х 84/16

Гарнитура “Times” Вид печати РОМ Бумага “Business”

Физ. печ. л. Усл. печ. л. Уч-изд. л.

Тираж 100 Заказ

________________________________________________________________

Издательский отдел КГЭУ