vba中inputbox函数与方法的区别
2016-12-28 20:35阅读:
今天了解到inputbox的函数与方法的区别:
sr=inputbox(“请输入内容!”,,'用户名') '函数
sr=application.inputbox('请输入内容!')'方法
返回值不同:
1、点击取消,函数返回值为“”;方法返回为false。
2、界面不同
函数:

方法:

3、参数区别
(1)函数 InputBox(prompt[,
title] [,
default]
[,
xpos] [,
ypos] [,
helpfile,
context]
)
InputBox 函数的语法具有以下几个
命名参数:
| 部分 |
描述 |
| Prompt |
必需的。作为对话框消息出现的字符串表达式。prompt
的最大长度大约是 1024 个字符,由所用字符的宽度决定。如果 prompt
包含多个行,则可在各行之间用回车符 (Chr(13))、换行符
(Chr(10)) 或回车换行符的组合 (Chr(13) &
Chr(10)) 来分隔。 |
| Title |
可选的。显示对话框标题栏中的字符串表达式。如果省略
title,则把应用程序名放入标题栏中。 |
| Default |
可选的。显示文本框中的字符串表达式,在没有其它输入时作为缺省值。如果省略
default,则文本框为空。 |
| Xpos |
可选的。数值表达式,成对出现,指定对话框的左边与屏幕左边的水平距离。如果省略
xpos,则对话框会在水平方向居中。 |
| Ypos |
可选的。数值表达式,成对出现,指定对话框的上边与屏幕上边的距离。如果省略
ypos,则对话框被放置在屏幕垂直方向距下边大约三分之一的位置。 |
| Helpfile |
可选的。字符串表达式,识别帮助文件,用该文件为对话框提供上下文相关的帮助。如果已提供
helpfile,则也必须提供 context。 |
| Context |
可选的。数值表达式,由帮助文件的作者指定给某个帮助主题的帮助上下文编号。如果已提供
context,则也必须要提供 helpfile。 |
(2)方法
表达式.InputBox(Prompt, Title, Default,
Left, Top, HelpFile, HelpContextID,
Type)
表达式 一个代表
Application
对象的变量。
参数
| 名称 |
必选/可选 |
数据类型 |
说明 |
| Prompt |
必选 |
String |
要在对话框中显示的消息。可为字符串、数字、日期、或布尔值(在显示之前,Microsoft Excel 自动将其值强制转换为
String)。 |
| Title |
可选 |
Variant |
输入框的标题。如果省略该参数,默认标题将为“Input”。 |
| Default |
可选 |
Variant |
指定一个初始值,该值在对话框最初显示时出现在文本框中。如果省略该参数,文本框将为空。该值可以是 Range 对象。 |
| Left |
可选 |
Variant |
指定对话框相对于屏幕左上角的 X 坐标(以磅
(磅:指打印的字符的高度的度量单位。1 磅等于 1/72 英寸,或大约等于 1 厘米的
1/28。)为单位)。 |
| Top |
可选 |
Variant |
指定对话框相对于屏幕左上角的 Y 坐标(以磅为单位)。 |
| HelpFile |
可选 |
Variant |
此输入框使用的帮助文件名。如果存在 HelpFile 和 HelpContextID
参数,对话框中将出现一个帮助按钮。 |
| HelpContextID |
可选 |
Variant |
HelpFile 中帮助主题的上下文 ID 号。 |
| Type |
可选 |
Variant |
指定返回的数据类型。如果省略该参数,对话框将返回文本。 |
返回值
Variant
说明
下表列出了可以在 Type 参数中传递的值。可以为下列值之一或其中几个值的和。例如,对于一个可接受文本和数字的输入框,将
Type 设置为 1 + 2。
| 值 |
含义 |
| 0 |
公式 |
| 1 |
数字 |
| 2 |
文本(字符串) |
| 4 |
逻辑值(True 或 False) |
| 8 |
单元格引用,作为一个 Range 对象 |
| 16 |
错误值,如 #N/A |
| 64 |
数值数组 |
使用
InputBox
可以显示一个简单的对话框,以便可以输入要在宏中使用的信息。此对话框有一个“确定”按钮和一个“取消”按钮。如果选择了“确定”按钮,则
InputBox 将返回对话框中输入的值。如果单击“取消”按钮,则
InputBox 返回
False。
如果
Type 为 0,
InputBox
将以文本格式返回公式。例如,“=2*PI()/360”。如果公式中有引用,将以 A1-样式引用返回(使用
ConvertFormula 转换引用样式)。
如果
Type 为 8,
InputBox 将返回一个
Range 对象。您必须用
Set 语句将结果指定给一个
Range 对象,如下例所示。
| Visual Basic for Applications |
Set myRange = Application.InputBox(prompt := 'Sample',
type := 8)
|
如果不使用
Set 语句,此变量将被设置为这个区域的值,而不是
Range 这个对象本身。
如果使用
InputBox 方法要求用户输入公式,则必须使用
FormulaLocal 属性来将此公式指定给一个
Range
对象。输入的公式使用用户语言。
InputBox 方法与
InputBox 函数的区别在于:它可以对用户的输入进行选择性验证,也可用于
Microsoft Excel 对象、误差值、和公式的输入。注意,
Application.InputBox
调用的是
InputBox 方法,不带对象识别符的
InputBox 调用的是
InputBox 函数。