InputBox
函数提示用户输入值。当输入值后,如果用户单击确定 按钮或按下键盘上的ENTER 键,InputBox
函数将返回文本框中的文本。如果用户单击“取消” 按钮,该函数将返回一个空字符串(""
)。
语法
InputBox(prompt[,title][,default][,xpos][,ypos][,helpfile,context])
参数说明
- Prompt - 必需的参数。 在对话框中显示为消息的字符串。提示的最大长度大约为
1024
个字符。 如果消息扩展为多行,则可以使用每行之间的回车符(Chr(13)
)或换行符(Chr(10)
)来分隔行。 - title - 一个可选参数。显示在对话框的标题栏中的字符串表达式。如果标题留空,应用程序名称将被放置在标题栏中。
- default - 一个可选参数。用户希望显示的文本框中的默认文本。
- xpos - 一个可选参数。
X
轴的位置表示水平从屏幕左侧的提示距离。 如果留空,则输入框水平居中。 - ypos - 一个可选参数。
Y
轴的位置表示竖直方向从屏幕左侧的提示距离。如果留空,则输入框垂直居中。 - helpfile - 一个可选参数。一个字符串表达式,标识用于为对话框提供上下文相关帮助的帮助文件。
- context - 一个可选参数。一个数字表达式,用于标识由帮助作者分配给相应帮助主题的帮助上下文编号。如果提供上下文,则还必须提供
helpfile
。
Application.nputBox 方法的语法(可以输入框选区域):
Application.InputBox(Prompt,[Title],[Default],[Left],[Top],[HelpFile],[HelpContextID],[Type])
其中:
• 参数 Prompt,必需,用于指定显示在对话框中提示用户输入的文本。
• 参数 Title,可选,提供显示在对话框标题栏的文本。如果忽略,则默认为
“输入”。
• 参数 Default,可选,当对话框初始化时,指定对话框中显示在文本输入框中的值。如果忽略,则文本框中为空。
• 参数 Left,可选,指定对话框相对于屏幕左上角的 x 位置,以磅为单位。
• 参数 Top,可选,指定对话框相对于屏幕左上解的 y 位置,以磅为单位。
• 参数 HelpFile,可选,为对话框提供帮助文件的名字。如果参数 HelpFile
和参数 HelpContextID 都被设置,则对话框中显示帮助按钮。
• 参数 HelpContextID,可选,在参数 HelpFile 中的帮助主题的上下文 ID 编
号。
• 参数 Type,可选,指定返回的数据类型。如果忽略该参数,则对话框返回
文本。下图 所示的表格中,列出了可以传递到参数 Type 中的值,可以
是一个值或者多个值之和(即任意组合)。例如,如果想要输入框接受文本
和数字,则可以设置参数 Type 为 1+2。
使用InputBox方法,我们可以展示一个简单的对话框,接纳用户输入的信息,并在代码中应用这些信息。这个对话框包含“确定”和“取消”两个按钮。当用户点击“确定”时,InputBox方法返回对话框中输入的值;当用户点击“取消”时,则返回False。
值得一提的是,如果将参数Type设置为0,InputBox方法会以文本形式返回公式,例如“=2+3”。在公式中如果有任何引用,则以A1样式的引用进行返回。如果将参数Type设置为8,InputBox方法会返回一个Range对象。此时,我们需要使用Set语句将对话框的结果赋值给一个Range对象变量,否则该变量会被设置为单元格区域中的值而非Range对象。
如果使用InputBox方法要求用户输入公式,那么必须使用FormulaLocal属性将公式赋值给Range对象。请注意,VBA还提供了一个与InputBox方法同名的内置函数:InputBox函数,这个函数仅能在对话框中输入数据。如果用户什么也没有输入,则返回一个零长度的字符串;如果用户点击“取消”,同样返回一个零长度的字符串。
注意:Application.InputBox 调用 InputBox 方法,而单独的 InputBox 则是InputBox 函数。总的来说,InputBox 方法的功能更加强大。