下面,繼續(xù)做一些有趣的事情。讓VBA能夠給我們彈出對(duì)話框,讓用戶作出響應(yīng),實(shí)現(xiàn)與用戶交互。這里要使用VBA的內(nèi)置函數(shù):MsgBox函數(shù)和InputBox函數(shù)。
與Excel工作表函數(shù)一樣,VBA也包含有各種內(nèi)置函數(shù),以簡化計(jì)算和操作,而MsgBox函數(shù)和InputBox函數(shù)就是其中常用的函數(shù)。這里,先介紹MsgBox函數(shù)。
顯示信息 MsgBox函數(shù)可以為我們提供輸出信息,將VBA代碼的運(yùn)行結(jié)果告訴我們??聪旅婧唵蔚氖纠?,代碼運(yùn)行后會(huì)彈出一個(gè)對(duì)話框,如圖右側(cè)所示。
此時(shí),Excel告訴我們相關(guān)信息,并會(huì)等待我們作出響應(yīng),單擊“確定”,對(duì)話框消失。當(dāng)然,這只是MsgBox函數(shù)最基本的用法。我們可以讓它顯示更豐富的信息,例如,顯示更有意義的標(biāo)題、更多的選擇按鈕、圖標(biāo),甚至獲取用戶響應(yīng)后的值。
將上面的程序代碼修改如下: Sub MsgBoxTest() Dim i As Long i = 5 MsgBox Prompt:='變量i的值是'& i, Buttons:=vbOKCancel vbCritical, Title:='顯示變量的值' End Sub 運(yùn)行后的結(jié)果如下圖: 圖中附加說明了MsgBox函數(shù)中各參數(shù)在對(duì)話框中對(duì)應(yīng)的顯示。
MsgBox函數(shù)的語法 MsgBox函數(shù)的語法如下: MsgBox ( prompt [ , buttons ] [ , title ] [, helpfile , context ] ) 其中,方括號(hào)內(nèi)的參數(shù)為可選參數(shù)。參數(shù)說明如下圖所示: 還有兩個(gè)參數(shù)helpfile和context,我們暫且不要管它。 下表列出了參數(shù)buttons的值及說明:
獲取響應(yīng)的值 在用戶單擊了MsgBox函數(shù)對(duì)話框中的按鈕后,我們可以獲取用戶的行為,即用戶單擊了哪個(gè)按鈕。這樣,我們可以根據(jù)用戶的選擇作出相應(yīng)的處理。 我們可以將MsgBox函數(shù)的結(jié)果賦給某個(gè)變量,此時(shí)需要將參數(shù)放在括號(hào)中,例如: Sub MsgBoxTest1() Dim Msg As Integer Msg = MsgBox('您要繼續(xù)運(yùn)行嗎?',vbYesNo) MsgBox Msg End Sub 代碼運(yùn)行結(jié)果如下圖所示: 接下來,我們就可以編寫代碼對(duì)用戶單擊的選擇進(jìn)行相應(yīng)的回應(yīng)。這種情形經(jīng)常使用在條件判斷語句中,在講述相關(guān)內(nèi)容時(shí),我們?cè)俳o出使用示例。
下表列出了MsgBox函數(shù)的返回值:
-------------------------------------- 通過下列方式可以更快地了解完美Excel更新:
關(guān)注《完美Excel》微信公眾賬號(hào): |
|