В VBA существуют две возможности создания диалоговых окон, позволяющих вести интерактивный диалог с пользователями.
Окно сообщений MsgBox выводит простейшие сообщения для пользователя, а окно ввода InputBox обеспечивает ввод информации.
Функция InputBox выводит на экран диалоговое окно, содержащее сообщение и поле ввода, устанавливает режим ожидания ввода текста пользователем или нажатия кнопки, а затем возвращает значение типа String, содержащее текст, введенный в поле.
сообщение – строковое выражение, отображаемое как сообщение в диалоговом окне. Может содержать несколько строк. Для разделения строк допускается использование символа возврата каретки (chr(13)), символа перевода строки (chr(10)) или комбинации этих клавиш (chr(13) & chr(10));
заголовок – строковое выражение, отображаемое в строке заголовка диалогового окна. Если этот аргумент опущен, в строку помещается имя приложения;
Default – строковое выражение, отображаемое в поле ввода как используемое по умолчанию, если пользователь не введет другую строку. Если этот аргумент опущен, поле ввода отображается пустым;
Xpos – числовое выражение, задающее расстояние по горизонтали между левой границей диалогового окна и левым краем экрана;
Ypos – числовое выражение, задающее расстояние по вертикали между верхней границей диалогового окна и верхним краем экрана.
Чтобы передать эту информацию (введенное значение в поле ввода) программе, присвойте возвращенное функцией InputBox значение строковой переменной (рис. 75), например:
strA=InputBox(«Какие места предпочитаете?»,"РЖД","У окна")
Рис. 75.Результат функции InputBox
Процедура MsgBox выводит на экран диалоговое окно, содержащее сообщение, устанавливает режим ожидания нажатия кнопки пользователем, а затем возвращает значение типа Integer, указывающее, какая кнопка была нажата.
сообщение – строковое выражение, отображаемое как сообщение в диалоговом окне;
кнопки – числовое выражение, представляющее сумму значений, которые указывают число и тип отображаемых кнопок, тип используемого значка, основную кнопку и модальность окна сообщения. Значение по умолчанию равно 0. Все значения данного аргумента см. в табл. 17, 18;
заголовок – строковое выражение, отображаемое в строке заголовка диалогового окна. Если этот аргумент опущен, в строку помещается имя приложения;
файл справки – строковое выражение, определяющее имя файла справки, содержащего справочные сведения о данном диалоговом окне. Если этот аргумент указан, необходимо наличие также аргумента context;
раздел – числовое выражение, определяющее номер соответствующего раздела справочной системы.