全部显示

InputBox 方法

       

显示一个接收用户输入的对话框。返回此对话框中输入的信息。

expression.InputBox(Prompt, Title, Default, Left, Top, HelpFile, HelpContextId, Type)

expression   必需。该表达式返回一个 Application 对象。

Prompt   String 类型,必需。对话框中显示的信息。可为字符串、数字、日期、或者一个布尔值(在显示之前,Microsoft Excel 自动将其值强制转换为 String 类型)。

Title   Variant 类型,可选。输入框的标题。如省略此参数,将使用默认的标题。

Default   Variant 类型,可选。指定一个初始值,并在对话框显示时出现在文本框中。如省略此参数,文本框的内容将是空的。此值可为一个 Range 对象。

Left   Variant 类型,可选。指定对话框相对于屏幕左上角的 x 坐标,用表示。

Top   Variant 类型,可选。指定对话框相对于屏幕左上角的 y 坐标,用磅表示。

HelpFile   Variant 类型,可选。此输入框使用的帮助文件名。如果存在 HelpFileHelpContextID 参数,对话框中将出现一个帮助按钮。

HelpContextId   Variant 类型,可选。HelpFile 中帮助上下文标识号。

Type   Variant 类型,可选。指定返回的数据类型。如果省略此参数,对话框将返回文本。可以是下列值的其中一个或其中几个的和。

含义
0 公式
1 数字
2 文本 (字符串)
4 逻辑值 (TrueFalse)
8 单元格引用,作为一个 Range 对象
16 错误值,如 #N/A
64 数值数组

Type 可以是以上允许值的和。例如,对一个可输入文本和数字的输入框,可将 Type 设置为 1 + 2。

说明

使用 InputBox 可以显示一个简单的对话框,以便输入宏所需要的的信息。此对话框有一个“确定”按钮和一个“取消”按钮。如果选取了“确定”按钮,则 InputBox 将返回对话框中输入的值。如果单击“取消”按钮,则 InputBox 的值为 False

如果 Type 为 0,InputBox 将以文本格式返回输入的公式。例如,“=2*PI()/360”。如果公式中有引用,将以 A1-样式引用返回(用 ConvertFormula 转换引用样式)。

如果 Type 为 8, InputBox 将返回一个 Range 对象。您必须用 Set 语句将结果指定给一个 Range 对象,如下例所示。

Set myRange = Application.InputBox(prompt := "Sample", type := 8)

如果不使用 Set 语句,此变量将被设为这个区域的值,而不是 Range 这个对象本身。

如果使用 InputBox 方法要求用户输入公式,则必须使用 FormulaLocal 属性来将此公式指定给一个 Range 对象。输入的公式使用用户语言。

InputBox 方法与 InputBox 函数的区别在于:它可以对用户的输入进行选择性验证,也可用于 Microsoft Excel 对象、误差值、和公式的输入。注意 Application.InputBox 调用的是 InputBox 方法,不带对象识别符的 InputBox 调用的是 InputBox 函数。

示例

本示例提示用户输入数字。

myNum = Application.InputBox("Enter a number")

本示例提示用户在 Sheet1 中选取一个单元格。示例使用 Type 参数证实返回值是有效的单元格引用 (一个 Range 对象)。

Worksheets("Sheet1").Activate
Set myCell = Application.InputBox( _
    prompt:="Select a cell", Type:=8)