大家好,我們今日繼續(xù)講解VBA代碼,今日講解的是第43講,Excel使用過程中,有時需要用戶輸入簡單的數(shù)據(jù),此時可以使用InputBox函數(shù)顯示一個對話框,供用戶在對話框中輸入數(shù)據(jù)信息,
InputBox函數(shù)顯示一個對話框,等待用戶輸入正文或按下按鈕,并返回包含文本框內(nèi)容的字符串,語法如下:
InputBox(prompt[, title] [, default] [, xpos] [, ypos] [, helpfile, context])
參數(shù)
a) prompt是必需的,作為對話框消息出現(xiàn)的字符串表達式。
b) title是可選的,作為顯示在對話框標(biāo)題欄中的字符串表達式,如果省略title參數(shù),則在標(biāo)題欄中顯示”Microsoft Excel”。
c) default是可選的,顯示在文本框中的字符串表達式,在沒有其它輸入時作為缺省值,如果省略default參數(shù),則文本框為空。
d) xpos是可選的,指定對話框的左邊與屏幕左邊的水平距離。如果省略xpos參數(shù),則對話框會在水平方向居中。
e) ypos是可選的,指定對話框的上邊與屏幕上邊的距離。如果省略ypos參數(shù),則對話框被放置在屏幕垂直方向距下邊大約三分之一的位置。
f) helpfile和參數(shù)context是可選的,為對話框提供上下文相關(guān)的幫助和編號,如果提供了其中一個參數(shù),則必須提供另一個參數(shù),兩者缺一不可。
如下面的代碼所示。
Sub MyInputBox()
Dim sInt As String
Dim r As Integer
r = Sheet1.Range(“A65536”).End(xlUp).Row
sInt = InputBox(“請輸入添加人員的姓名:”)
If Len(Trim(sInt)) > 0 Then
Sheet1.Cells(r + 1, 1) = sInt
Else
MsgBox “您沒有輸入內(nèi)容!”
End If
End Sub
代碼窗口:

代碼解析:
MyInputBox過程使用InputBox函數(shù)顯示一個對話框供用戶在對話框中輸入數(shù)據(jù),
第5行代碼,使用InputBox函數(shù)顯示一個提示用戶輸入郵政編碼的對話框,其中”請輸入添加人員的姓名:”是必需的prompt參數(shù),其他參數(shù)使用缺省值。
第4行代碼,使用Len函數(shù)和Trim函數(shù)判斷返回的去除空格后的字符串長度。如果字符串長度大于零,說明用戶單擊了對話框的”確定”按鈕,則將用戶輸入的數(shù)據(jù)寫到工作表的A列單元格。如果返回的是長度為零的字符串,說明用戶單擊了對話框的”取消”按鈕,則顯示一條提示消息。
因為當(dāng)用戶單擊對話框的”確定”按鈕后,InputBox函數(shù)返回包含文本框內(nèi)容的字符串,如果用戶單擊對話框的”取消”按鈕則返回一個長度為零的字符串(””),通過返回的字符串長度可以判斷用戶做出的選擇。
代碼運行:

代碼運行后:

今日內(nèi)容回向:
1 InputBox 函數(shù)的意義是什么?
2 Len(Trim(sInt)) 意義是什么?
本文由網(wǎng)上采集發(fā)布,不代表我們立場,轉(zhuǎn)載聯(lián)系作者并注明出處:http://m.zltfw.cn/shbk/39146.html