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语句用于插入“是”和“否”按钮供用户单击。
以下示例展示了如何在实践中使用此语法。
示例:创建带有是/否答案的消息框
假设我们的 Excel 工作表的单元格 A1 和 B1 中有以下两个值:
假设我们要创建一个宏,向用户显示一个消息框,并询问他们是否要将单元格 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 中执行其他常见任务: