W3Cschool
恭喜您成為首批注冊用戶
獲得88經(jīng)驗(yàn)值獎勵
InputBox函數(shù)顯示一個信息提示用戶輸入數(shù)據(jù),這個對話框有兩個按鈕——“確定”和“取消”,當(dāng)你點(diǎn)擊確定時,InputBox函數(shù)返回用戶輸入在信息框里的信息;當(dāng)你點(diǎn)擊取消時,函數(shù)則返回空字符串(” ”)。InputBox函數(shù)的語法顯示如下:
InputBox(prompt [, title] [, default] [, xpos] [, ypos] _ [, helpfile, context])
第一個參數(shù),prompt,是你想要顯示在對話框上的信息,你可以使用函數(shù)Chr(13)或Chr(10)將長文本打斷為幾行(參見本章中使用MsgBox函數(shù)的例子)。剩下所有的參數(shù)都是可選的。
第二個參數(shù),title,讓你改變對話框的默認(rèn)標(biāo)題,默認(rèn)的標(biāo)題是Mictosoft Excel。InputBox函數(shù)的第三個參數(shù),default,讓你在文本框里顯示一個默認(rèn)值,如果你忽略這個參數(shù)的話,顯示的將是空白編輯框。
接下來的兩個參數(shù),xpos和ypos,允許你設(shè)置該對話框在屏幕上出現(xiàn)的位置,如果你忽略這兩個參數(shù),對話框就會出現(xiàn)了當(dāng)前窗口的中央,xpos參數(shù)決定對話框在屏幕上從左起的水平位置,忽略它時,對話框顯示在水平中央,而ypos參數(shù)決定對話框在屏幕從上而下的豎直位置,忽略它,對話框就在豎直大約三分之一的位置。xpos和ypos都使用一個叫twips的專門單位衡量,1twip大約等于0.0007英寸。最后兩個參數(shù),helpfile和context,和在本章前期討論的MsgBox函數(shù)相應(yīng)的參數(shù)使用方法一樣。
現(xiàn)在你知道了InputBox參數(shù)的意義了,我們來看看這個函數(shù)的使用示例:
1. 在MyFunctions (Chap04.xls)工程里添加一個新模塊,重命名為Sample8
2. 激活Sample8模塊,并且輸入下列子程序:
End Sub
上面的過程顯示一個帶兩個按鈕的對話框,輸入提示顯示在兩行里。象MsgBox函數(shù)一樣,如果你想要使用用戶輸入的數(shù)據(jù),那么你應(yīng)該使用一個變量來儲存該對話框結(jié)果。下面顯示的子程序Informant2將InputBox函數(shù)的結(jié)果賦值給變量town:
圖4-10 Informant子程序產(chǎn)生的對話框
Sub Informant2()
Dim myPrompt As String
Dim town As String
Const myTitle = "Enter data"
myPrompt = "Enter your place of birth:" & Chr(13) _
& "(e.g., Boston, Great Falls, etc.)"
town = InputBox(myPrompt, myTitle)
MsgBox "You were born in " & town & ".", , "Your response"
End Sub
注意,這次,InputBox函數(shù)的參數(shù)列在了括號中間。如果你需要在稍后的程序中需要使用InputBox函數(shù)的結(jié)果,那么括號是必須的。Informant2子程序使用常數(shù)來確定顯示在對話框標(biāo)題上的文本。因?yàn)?,這個值在過程執(zhí)行過程中從始至終都是保持不變的,所以,可以將對話框的標(biāo)題聲明為一個常量,然而,如果你愿意,你也可以使用一變量。
當(dāng)你運(yùn)行使用了InputBox的過程時,使用該函數(shù)的對話框總是出現(xiàn)在屏幕的同一位置,你可以按前面解釋的那樣,提供xpos和ypos參數(shù)來改變對話框的位置。
3. 修改過程Informant2中的InputBox函數(shù),讓對話框顯示在屏幕的左上角,例如:
town = InputBox(myPrompt, myTitle, , 1, 200)
注意,參數(shù)myTitle后面緊跟兩個逗號,第二個逗號是忽略掉的默認(rèn)值參數(shù)。下面兩個參數(shù)決定對話框的水平和豎直位置。如果你忽略了參數(shù)myTitle后面的第二個逗號,VB將會使用數(shù)字1作為默認(rèn)值。如果你使用了參數(shù)名稱的話,(例如,prompt:=myPrompt, title:=myTitle, xpos:=1,ypos:=200),你就不必記住在每個忽略了參數(shù)的地方加逗號了。
如果你輸入了一個數(shù)字,而不是一個城鎮(zhèn)的名稱,后果會怎樣?因?yàn)椋脩艚?jīng)常會在對話框里輸入錯誤的數(shù)據(jù),所以,你的程序必須驗(yàn)證用戶輸入的數(shù)據(jù)是否可以在將來的數(shù)據(jù)操作里使用。InputBox函數(shù)本身并沒有提供驗(yàn)證數(shù)據(jù)的工具,要驗(yàn)證用戶的輸入,你必須使用其它的VBA指令,這將在接下來的章節(jié)里講述。
Copyright©2021 w3cschool編程獅|閩ICP備15016281號-3|閩公網(wǎng)安備35020302033924號
違法和不良信息舉報電話:173-0602-2364|舉報郵箱:jubao@eeedong.com
掃描二維碼
下載編程獅App
編程獅公眾號
聯(lián)系方式:
更多建議: