показанному на рис. 11.2 (пример А).
Рис. 11.2. Три простых окна сообщения
Текст сообщения можно заключить в скобки, но скобки необязательны, когда функция используется как оператор.
Сообщение может быть также переменной или выражением. Как обычно, VBA автоматически конвертирует за вас числовые значения и даты в отображаемые символы. Например, следующий фрагмент программного кода вполне работоспособен, а результат показан на рис. 11.2 (пример Б):
intWishCount = 3
datWhen = Format(Now, "Short date")
strInfol = "Ha "
strInfo2 = " осталось желаний: "
MsgBox strlInfol & datWhen & strInf o2 & intWishCount
Чтобы отобразить сообщение в несколько строк, добавьте в сообщение символы перехода на новую строку (их ASCII-код равен 13) с помощью функции Chr (пример В на рис. 11.2).
MsgBox "Это первая строка." & Chr(13) & "Это вторая строка.'
Можно разбить текст многострочного сообщения и на столбцы, используя символы табуляции (их ASCII-код равен 9).
Кроме сообщения, в окне сообщения может присутствовать одна из нескольких стандартных пиктограмм, а также несколько кнопок стандартного вида. Все это задается указанием одного числового значения для необязательного аргумента кнопки.
С пиктограммой ваше окно сообщения будет выглядеть немного "круче", чем простенькие окна с рис. 11.2. Показанное на рис. 11.3 окно сообщения содержит пиктограмму критической ситуации (эта пиктограмма обычно вызывает у пользователя некоторое волнение).
Рис. 113. Непростое окно сообщения
По умолчанию окно сообщения имеет только кнопку ОК, но можно в него добавить и кнопки с надписями Отмена, Да, Нет, Стоп, Повтор и Пропустить в различных комбинациях. На рис. 11.3 как раз показано окно с одной из таких комбинаций кнопок.
Как и для подобных аргументов многих других функций, значение для аргумента кнопки вычисляется как сумма констант, представляющих наборы кнопок и пиктограммы. Можно подсчитать нужное значение вручную, но лучше создать подходящее выражение из именованных VBA-констант, предлагаемых как раз для этих целей. В табл. 11.6 эти константы приведены вместе с их числовыми значениями и описаниями назначения.
Таблица 11.6. Константы VBA для окон сообщений и окон ввода
Константа | Числовое значение | Соответствующее действие |
vbOKOnly | 0 | Отображение только кнопки ОК |
vbOKCancel | 1 | Отображение кнопок ОК и Отмена |
vbAbcrtRetryIgnore | 2 | Отображение кнопок Стоп, Повтор и Пропустить |
vbYesNoCancel | 3 | Отображение кнопок Да, Нет и Отмена |
vbYesNo |