Excel VBA Функция MsgBox
Функция MsgBox в Excel VBA может возвращать результат, в то время как простой MsgBox не может.
Ситуация:
Поместите командную кнопку на листе и добавьте строки следующего кода:
-
Во-первых, мы объявляем переменную ответ типа Integer.
Dim answer As Integer
-
Мы используем функцию MsgBox, чтобы инициализировать переменную ответ с введенной пользователем.
Функция MsgBox, при использовании круглых скобок, имеет три аргумента. Первая часть используется для сообщения в окне сообщения. Используйте вторую часть, чтобы указать, какие кнопки и значки, которые Вы хотите, чтобы появиться в окне сообщения. Третья часть отображается в строке заголовка окна сообщения.
answer = MsgBox("Are you sure you want to empty the sheet?", vbYesNo + vbQuestion, "Empty Sheet")
Примечание: Наведите курсор на vbYesNo в редакторе Visual Basic и нажмите F1, чтобы увидеть другие кнопки и значки, которые Вы можете использовать. Вместо постоянных vbYesNo и vbQuestion, вы можете также использовать соответствующие значения 4 и 32.
-
Если пользователь нажимает на кнопку Да, Excel VBA опустошает лист. Если пользователь нажимает кнопку Нет, ничего не происходит. Добавьте следующие строки кода для достижения этой цели.
If answer = vbYes Then Cells.ClearContents Else 'do nothing End If
-
Нажмите кнопку управления на листе.
-
Нажмите кнопку Да.
Результат: