Vba: як створити вікно повідомлень із відповідями «так/ні».
Ви можете використовувати такий синтаксис у VBA, щоб створити вікно повідомлення, у якому користувач може вибрати Так або Ні:
Sub MsgBoxYesNo()
'ask user if they want to multiply two cells
UserResponse = MsgBox(" Do you want to multiply cells A1 and B1? ", vbYesNo)
'perform action based on user response
If UserResponse = vbYes Then
Range(" C1 ") = Range(" A1 ") * Range(" B1 ")
Else
MsgBox “ No Multiplication was Performed ”
End If
End Sub
Цей конкретний макрос створює вікно повідомлення, яке запитує користувача, чи хоче він помножити клітинки A1 і B1.
Якщо користувач натискає «Так», обидві клітинки перемножуються, а результат відображається в клітинці C1.
Якщо користувач клацне «Ні», з’явиться нове вікно повідомлення про те, що множення не виконано.
Зауважте, що оператор vbYesNo вставляє кнопки «Так» і «Ні», які користувач може натиснути.
Наступні приклади показують, як використовувати цей синтаксис на практиці.
Приклад: створіть вікно повідомлення з відповідями «Так/Ні».
Припустимо, що ми маємо наступні два значення в комірках A1 і B1 нашого аркуша Excel:
Припустімо, ми хочемо створити макрос, який відображає вікно повідомлення для користувача та запитує, чи хочуть вони перемножити значення в клітинках A1 і B1.
Для цього ми можемо створити такий макрос:
Sub MsgBoxYesNo()
'ask user if they want to multiply two cells
UserResponse = MsgBox(" Do you want to multiply cells A1 and B1? ", vbYesNo)
'perform action based on user response
If UserResponse = vbYes Then
Range(" C1 ") = Range(" A1 ") * Range(" B1 ")
Else
MsgBox “ No Multiplication was Performed ”
End If
End Sub
Коли ми запускаємо цей макрос, з’являється таке вікно повідомлення:
Якщо ми натиснемо Так , то макрос перемножить значення в комірках A1 і B2 і відобразить результат у комірці C1:
Однак, якщо ми натиснемо «Ні» , з’явиться нове вікно повідомлення:
У вікні повідомлення повідомляється, що множення не було виконано, оскільки ми натиснули Ні в попередньому вікні повідомлення.
Додаткові ресурси
У наступних посібниках пояснюється, як виконувати інші типові завдання у VBA:
VBA: Як додати новий рядок до вікна повідомлення
VBA: Як додати нові аркуші
VBA: Як заморозити панелі