Excel VBA執(zhí)行判斷的方法
一般來說,在Excel VBA中執(zhí)行判斷有三種方法:1 .IIf功能;2.選擇案例陳述;3.If語句。下面舉例說明這三種方法的使用以及使用時(shí)應(yīng)注意的問題。
-一步閱讀工具/原材料Excel & VBA 1。簡單IIf函數(shù)1如果函數(shù)是最簡潔的。它將函數(shù)值以函數(shù)的形式返回給相應(yīng)的變量。IIf函數(shù)有三個(gè)輸入?yún)?shù):第一個(gè)參數(shù)是邏輯判斷,第二個(gè)參數(shù)是判斷結(jié)果為“真”時(shí)執(zhí)行的表達(dá)式,第三個(gè)參數(shù)是判斷結(jié)果為“假”時(shí)執(zhí)行的表達(dá)式。
步驟讀數(shù)2在下圖中,IIf函數(shù)用于實(shí)現(xiàn)判斷分?jǐn)?shù)是否優(yōu)秀的代碼和相應(yīng)的執(zhí)行過程。
-3步讀數(shù)-4步讀數(shù)-5步讀數(shù)-6步讀數(shù)-7步讀數(shù)3請注意,IIf功能的所有三個(gè)參數(shù)都是必需的。特別需要注意的是,如果后兩個(gè)參數(shù)是表達(dá)式,無論判斷條件的結(jié)果是否為真,都會執(zhí)行這兩個(gè)表達(dá)式,但只會返回滿足判斷條件的結(jié)果。因此,后兩個(gè)參數(shù)不能包含不正確的計(jì)算,例如:不能包含除數(shù)為0的表達(dá)式。圖中的過程ChuFaYunSun()中,如果ChuShu輸入的值為0,將出現(xiàn)一個(gè)錯(cuò)誤,并彈出一個(gè)錯(cuò)誤提示。
-8步閱讀-9步閱讀-10步閱讀-11步閱讀-12步閱讀-13步閱讀結(jié)束2。優(yōu)雅的選擇案例語句1選擇案例語句更擅長判斷單個(gè)變量。它可以使代碼優(yōu)雅、整潔、簡潔,特別是當(dāng)要判斷的變量有多個(gè)值并且每個(gè)不同的值會有不同的操作時(shí),代碼會更容易理解。
-14步閱讀圖2中的步驟GetScoring(),根據(jù)輸入的分?jǐn)?shù)獲得分?jǐn)?shù)范圍。當(dāng)輸入的等級無效時(shí),會有相應(yīng)的提示。
-15步閱讀-16步閱讀-17步閱讀-18步閱讀-19步閱讀圖3中的過程GetScoreClass()可以通過輸入分?jǐn)?shù)范圍獲得成績等級。因?yàn)镾elect語句的Case部分不能表示大于或等于90且小于或等于100的類似語句,所以它只能受整數(shù)分?jǐn)?shù)的約束(代碼中的CInt函數(shù)對輸入數(shù)據(jù)進(jìn)行舍入)。例如,輸入89.5將舍入到90,并判斷為“優(yōu)秀”,這與實(shí)際情況不一致。
-20步閱讀-21步閱讀-22步閱讀結(jié)束3,強(qiáng)有力的If句子1If句子是VBA執(zhí)行判決的最強(qiáng)有力的方法。它可以是一個(gè)行語句,也可以是一個(gè)帶有ElseIf和Else的復(fù)雜邏輯判斷結(jié)構(gòu)。所有IIf函數(shù)和選擇案例語句都可以用If語句重寫。
-23步讀取2上述選擇案例語句的第二個(gè)實(shí)例可以通過一個(gè)If語句更準(zhǔn)確地實(shí)現(xiàn)。圖中所示的過程可以實(shí)現(xiàn)與實(shí)際情況一致的判斷:當(dāng)輸入89.5時(shí),判斷為“好”,所有可以通過IIf函數(shù)和Select Case語句實(shí)現(xiàn)的功能也可以實(shí)現(xiàn)。
-24步閱讀-25步閱讀-26步閱讀-27步閱讀-28步閱讀結(jié)束注意:此體驗(yàn)面向?qū)xcel VBA有一定了解的讀者。至少他們需要知道如何進(jìn)入代碼的編寫環(huán)境以及如何執(zhí)行代碼,這樣體驗(yàn)文本就不會重復(fù)這一點(diǎn)。