九色国产,午夜在线视频,新黄色网址,九九色综合,天天做夜夜做久久做狠狠,天天躁夜夜躁狠狠躁2021a,久久不卡一区二区三区

打開APP
userphoto
未登錄

開通VIP,暢享免費電子書等14項超值服

開通VIP
VBA的IIf和If區(qū)別與用法
userphoto

2023.10.14 廣東

關注

VBA中IIf是函數(shù),其用法和EXCEL工作表函數(shù)If相似,格式是IIF( 計算表達式 , 表達式為真返回值 , 表達式為假返回值 );

而VBA中IF是語句,相比IIf更為靈活,單行的格式是if……then……else……(else部分可有可無),多行的格式如下:

if 計算表達式1 then

    ……(計算表達式1為真,此處執(zhí)行語句)

elseif 計算表達式2 then

    ……(計算表達式1為假,計算表達式2為真,此處執(zhí)行語句)

else

    ……(以上計算表達式均為假,此處執(zhí)行語句)

end if

其中elseif部分和else部分都是可選的(可忽略不寫的),而iif函數(shù)的第三參數(shù)必須被定義。

而且IIf因為是函數(shù),所以不能像If那樣參數(shù)里執(zhí)行語句,比如以下代碼IF語句判斷成績及格與不及格:

Sub 用if判斷成績及格與不及格()
score = 71
If score >= 60 Then MsgBox "及格" Else MsgBox "不及格"
End Sub

IIf函數(shù)就不能寫成IIF( score >= 60 , MsgBox "及格"MsgBox "不及格" ),因為它是函數(shù)需要被賦值,而且參數(shù)不能執(zhí)行msgbox語句,所以只能寫成:

Sub 用if判斷成績及格()
score = 71
grade = IIf(score >= 60, "及格", "不及格")
MsgBox grade
End Sub

不過也正因為iif函數(shù)能賦值,所以相比If語句它的優(yōu)勢就在于單條件下它的賦值更方便,像以上判斷成績及格與不及格用if來賦值就要寫成以下代碼:

Sub 用if判斷成績及格與不及格()
score = 71
If score >= 60 Then
    grade = "及格"
Else
    grade = "不及格"
End If
MsgBox grade
End Sub

即使因為這是單條件,if語句能寫成以下單行,但還是會比iif函數(shù)寫得更長:

Sub 用if判斷成績及格與不及格()
score = 71
If score >= 60 Then grade = "及格" Else grade = "不及格"
MsgBox grade
End Sub

但也不是說IIf在賦值上就一定比If好用,在多條件判斷或嵌套的賦值時,IIf函數(shù)就不如If語句了,畢竟If有elseif部分。比如以下用If語句判斷成績優(yōu)良及格與不及格:

Sub 用if寫成績判斷()
score = 71
If score >= 85 Then
    grade = "優(yōu)秀"
ElseIf score >= 75 Then
    grade = "良好"
ElseIf score >= 60 Then
    grade = "及格"
Else
    grade = "不及格"
End If
MsgBox grade
End Sub

雖然用IIf用嵌套的方式也可以做到同樣的結(jié)果,比如如下代碼,但是這樣在書寫上是不如If……elseif……else清晰,很容易寫漏括號或逗號造成語法寫錯:

Sub 用iif寫成績判斷()
score = 71
grade = IIf(score >= 85, "優(yōu)秀", IIf(score >= 75, "良好", IIf(score >= 60, "及格", "不及格")))
MsgBox grade
End Sub

如果能用Ifs函數(shù),那多條件判斷賦值Ifs函數(shù)當然比IIf函數(shù)和If語句更勝一籌,但可惜VBA沒有Ifs函數(shù),也不支持調(diào)用EXCEL工作表的Ifs函數(shù)。

總的來說,vba的IIf函數(shù)在單條件判斷的賦值上比If語句更方便,但不如If語句的使用范圍廣泛,且多條件賦值或者嵌套時不如If清晰。所以在單條件判斷的賦值時,可以使用IIF以節(jié)省代碼書寫時間與長度,當然如果不嫌麻煩,也還是可以使用If的。

以上內(nèi)容對您有幫助可以分享或轉(zhuǎn)藏,避免以后找不到。想要了解更多VBA相關知識,歡迎到http://moqingyan.360doc.com我的個人圖書館查看。

本站僅提供存儲服務,所有內(nèi)容均由用戶發(fā)布,如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點擊舉報。
打開APP,閱讀全文并永久保存 查看更多類似文章
猜你喜歡
類似文章
什么是IF分支語句?
VBA中的條件判斷函數(shù)IFF
第5講 流程控制語句
Excel VBA之函數(shù)篇-3.1-iif函數(shù)
《數(shù)據(jù)庫基礎及應用》期末綜合練習題
VB程序設計程序控制結(jié)構(gòu)(一)
更多類似文章 >>
生活服務
熱點新聞
分享 收藏 導長圖 關注 下載文章
綁定賬號成功
后續(xù)可登錄賬號暢享VIP特權(quán)!
如果VIP功能使用有故障,
可點擊這里聯(lián)系客服!

聯(lián)系客服