如何在 Excel 中使用 VBA 消息框和输入框?
微信公众号:Python编程与Office办公自动化
2 人赞同了该文章
问题:
使用 vbYesNo 参数(显示答案按钮:是和否)制作一个 消息框Msgbox,询问用户是否具有特定名称(例如,询问用户是否名为小明)。如果答案是否定的,请使用输入框InputBox方法允许用户更改名称。随后,使用此新输入来创建新的消息框
答案解析:
首先声明变量,然后将 MsgBox 答案分配给变量
Dim Ans As String Dim Ans2 As String Dim Name As String Ans = MsgBox("你的名字是小明吗?", vbYesNo, "VBA程序")
如果答案为否,则继续创建一个 InputBox 来接收新的用户名
If Ans = vbNo Then Name = InputBox("那你的名字是?", "VBA程序")
如果未输入任何文本,就离开 InputBox,那么就会退出程序
If Name = vbNullString Then Exit Sub End If
接收用户的输入,并对用户的下一个点击事件,做出两种回应
Ans2 = MsgBox("抱歉," & Name & "! 欢迎你!" & vbCrLf & vbCrLf & "热烈欢迎!", vbYesNo, "VBA程序") If Ans2 = vbNo Then MsgBox "下次再来!", vbCritical, "VBA程序" Else MsgBox "欢迎光临!" End If
如果真的是小明,我们直接输出一个对话框
Else MsgBox "你好,我是个服务员机器人!", , "VBA程序"
完整代码示例:
Sub Solution() Dim Ans As String Dim Ans2 As String Dim Name As String Ans = MsgBox("你的名字是小明吗?", vbYesNo, "VBA程序") If Ans = vbNo Then Name = InputBox("那你的名字是?", "VBA程序") If Name = vbNullString Then Exit