語法:InputBox(prompt[, title] [, default] [, xpos] [, ypos] [, helpfile, context])
說明:在壹對話框來中顯示提示,等待用戶輸入正文或按下按鈕,並返回包含文本框內容的 String。
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。
示例:
sub InputBox函數()
Dim k as String
InputBox("提示"&VbCrLf&"換行","標題","默認值")
Cells(1,1)=k
end sub
補充知識點:
Application.InputBox 方法
顯示壹個接收用戶輸入的對話框。返回此對話框中輸入的信息。
格式:Application.InputBox(prompt,Title,Default,Left,Top,HelpFile,HelpContextID,Type)
參數
名稱
必選/可選
數據類型
說明
Prompt
必選
String
要在對話框中顯示的消息。可為字符串、數字、日期、或布爾值(在顯示之前,Microsoft Excel 自動將其值強制轉換為 String)。
Title
可選
Variant
輸入框的標題。如果省略該參數,默認標題將為“Input”。
Default
可選
Variant
指定壹個初始值,該值在對話框最初顯示時出現在文本框中。如果省略該參數,文本框將為空。該值可以是 Range 對象。
Left
可選
Variant
指定對話框相對於屏幕左上角的 X 坐標(以磅為單位)。
Top
可選
Variant
指定對話框相對於屏幕左上角的 Y 坐標(以磅為單位)。
HelpFile
可選
Variant
此輸入框使用的幫助文件名。如果存在 HelpFile 和 HelpContextID 參數,對話框中將出現壹個幫助按鈕。
HelpContextID
可選
Variant
HelpFile中幫助主題的上下文 ID 號。
Type
可選
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 對象。
示例1
Visual Basic for Applications
Set myRange = Application.InputBox(prompt := "Sample", type := 8)
如果不使用 Set 語句,此變量將被設置為這個區域的值,而不是 Range 這個對象本身。
如果使用 InputBox 方法要求用戶輸入公式,則必須使用 FormulaLocal 屬性來將此公式指定給壹個 Range 對象。輸入的公式使用用戶語言。
示例2
Sub 使用InputBox方法()
Worksheets.Sheet(1).Activate
Set myCell = Application.InputBox(prompt:="用鼠標單擊" & vbCrLf & "壹個單元格", Type:=8)
運行以上代碼,用鼠標單擊壹個單元格,該單元格的引用地址將自動填入對話框的輸入區域中。
InputBox 方法與 InputBox 函數的區別在於:它可以對用戶的輸入進行選擇性驗證,也可用於 Microsoft Excel 對象、誤差值、和公式的輸入。註意,Application.InputBox 調用的是 InputBox 方法,不帶對象識別符的 InputBox 調用的是 InputBox 函數。