| Кнопка | Код |
| «ОК» | vbOK |
| «Cancel» | vbCancel |
| «Отменить» | vbAbort |
| «Повторить» | vbRetry |
| «Игнорировать» | vbIgnore |
| «Да» | vbYes |
| «Нет» | vbNo |
- ”Заголовок” – текст для заголовка окна (необязателен).
Пример: выполнить вычисления (макрос) по формуле
- данные вводятся с клавиатуры,
- если данные не числа – сообщение об ошибке,
- после вычислений вывести запрос на продолжение.
| Код макроса | Комментарий |
| Option Explicit | |
| Public Sub ExecDialog() | Начало процедуры |
| Dim a As Single, b As Single | Задание переменных |
| Dim z As Single | |
| Dim strA As String, strB As String | |
| Dim response | |
| newInput: | Ввод данных в диалог |
| strA = InputBox("InputA") | |
| strB = InputBox("InputB") | |
| If Not IsNumeric(strA) Or Not IsNumeric(strB) Then | Проверка ввода (условие) (если данные не числа - сообщение об ошибке в диалоге с пиктограммой (х)) |
| MsgBox "Error!" & Chr(10) & Chr(13) & "Not number data!", vbCritical, "" | |
| Exit Sub | |
| End If | |
| a = CSng(strA): b = CSng(strB) | Преобразование a и b в число с плавающей запятой |
| z = Sqr(a ^ 2 + b ^ 2) | Формула |
| MsgBox "Z=" & Format(z, "###0.00") & "A=" & a & "B=" & b, vbInformation, "" | Вывод результатов работы в диалог с пиктограммой (!) |
| response = MsgBox("Input new data", vbQuestion + vbYesNo, "") | Запрос на повторный ввод данных в диалоге с пиктограммой (?) и кнопками Да, Нет |
| If response = vbYes Then GoTo newInput | Если Да, новый ввод данных |
| End Sub | Окончание процедуры |
Задание:
1. Убрать проверку ввода.
2. Убрать запрос на ввод новых данных.
3. Изменить имя процедуры на «h».
4. Изменить имена переменных: strA на с, strB на d.
5. Изменить сообщения InputA на ВводА, InputB на ВводВ.






