Excel VBA中的InputBox和MsgBox是两个常用的对话框函数,分别用于输入和输出,是用户与Excel交互并获取输入或显示消息的重要途径。 基本用法 案例将通过两个InputBox获取长方形的长度和宽度,再用一个MsgBox显示长方形的面积。 Sub test() Dim x%, y% x = InputBox("请输入长方形的长度") y = InputBox("请输入长方形的宽度") MsgBox "长方形的面积:" & x * y End Sub
两个InputBox分别弹出如下图所示对话框以便用户输入数据。 MsgBox将输出两者的乘积,即长方形的面积。 语法参数 以上案例中只用到了它们的基本参数,完整的语法如下: InputBox(Prompt, [Title], [Default], [XPos], [YPos], [HelpFile], [Context]) Prompt (必需):用于显示给用户的提示信息。 Title (可选):对话框的标题。 Default (可选):对话框中文本框的默认值。 XPos 和 YPos (可选):对话框的位置(以像素为单位)。 HelpFile 和 Context (可选):与对话框相关的帮助文件和上下文 ID。 MsgBox(Prompt, [Buttons], [Title], [HelpFile], [Context]) Prompt (必需):要显示给用户的消息。 Buttons (可选):指定在消息框中显示的按钮类型,如“确定”、“取消”等。 Title (可选):消息框的标题。计算面积 HelpFile 和 Context (可选):与消息框相关的帮助文件和上下文 ID。 启用更多的参数完善案例: Sub test() Dim x%, y% x = InputBox("请输入长度", "长方形参数", 100) y = InputBox("请输入宽度", "长方形参数", 5) MsgBox "长方形的面积:" & x * y, vbYesNo, "计算面积" End Sub
注意对比,InputBox的对话框比之前多了一个对话框名称(长方形参数)和默认值(100) MsgBox比之前多了一个对话框名称(计算面积),且按钮变成了2个。 换行显示 Prompt参数即需要显示的信息如包含多行,用换行符chr(10)间隔。 将案例代码稍作修改 Sub test() Dim x%, y% x = InputBox("请输入长度", "长方形参数", 100) y = InputBox("请输入宽度", "长方形参数", 5) MsgBox "长方形的面积:" & x * y & Chr(10) & "是否正确?", vbYesNo, "计算面积" End Sub
Msgbox输出内容分为2行显示
|