2.Application.Inputbox方法 上一篇的Inputbox函数,有几个不足之处:1.不能选单元格;2.无法对输入的数据(特别是类型)做检测;3.对于返回结果,如果直接关闭对话框或点击取消,返回的结果都是长度为0的字符串,无法判断是没有输入内容还是点了取消。 在Application对象中,刚好有一方法能弥补上述不足。 语法:Application.InputBox(Prompt, Title, Default, Left, Top, HelpFile,HelpContextID, Type)
Prompt:必选参数,表示要在对话框中显示的消息。可为字符串、数字、日期、或布尔值(在显示之前,Microsoft Excel 自动将其值强制转换为 String)。
Title:可选,输入框的标题。如果省略该参数,默认标题将为 输入(英文版本的童鞋可以测试下,有可能是 Input )。
Default 可选 Variant 指定一个初始值,该值在对话框最初显示时出现在文本框中。如果省略该参数,文本框将为空。该值可以是 Range 对象。
Left 可选 Variant 指定对话框相对于屏幕左上角的 X 坐标(以磅(磅:指打印的字符的高度的度量单位。1 磅等于 1/72 英寸,或大约等于 1 厘米的 1/28。)为单位)。 Top 可选 Variant 指定对话框相对于屏幕左上角的 Y 坐标(以磅为单位)。 在这个方法中,这两个参数设置后无实际效果。 对话框的Left和Top坐标,默认情况下是在屏幕中间。当有挪动过对话框后,该坐标位置即被记忆,再次调用该方法时,还会在上次的坐标处显示。
HelpFile 可选 Variant 此输入框使用的帮助文件名。如果存在 HelpFile 和 HelpContextID 参数,对话框中将出现一个帮助按钮。 HelpContextID 可选 VariantHelpFile 中帮助主题的上下文 ID 号。
Type 可选 Variant 指定返回的数据类型。如果省略该参数,对话框将返回文本。 正是因为有了这个参数,数据的检验才得以实现。
Type具体值如下表,可以为下列值之一或其中几个值的和
返回值:Variant类型
注意: 如果在录入对话框中选择了“确定”按钮,则 InputBox 将返回对话框中输入的值。如果单击“取消”按钮,则 InputBox 返回 False。
如果 Type 为 0,InputBox 将以文本格式返回公式。例如,“=2*PI()/360”。如果公式中有引用,将以 A1样式引用返回。
如果 Type 为 8,InputBox 将返回一个 Range 对象,此时必须用 Set 语句将结果指定给一个 Range 对象,如果不使用 Set 语句,此变量将被设置为这个区域的值,而不是 Range 这个对象本身。
InputBox 方法与 InputBox 函数的区别在于:它可以对用户的输入进行选择性验证,也可用于 Microsoft Excel 对象、误差值、和公式的输入。注意,Application.InputBox 调用的是 InputBox 方法,不带对象识别符的 InputBox 调用的是 InputBox 函数。
还有一点需要注意的是,在测试代码时,尽可能考虑到选择是一个单元格,一个区域,多个区域这几种情况。这里不一一细讲,大家去代码中折腾发现。
示例1 :
示例2 :
|