If...Then...Else 語(yǔ)句根據(jù)表達(dá)式的值有條件地執(zhí)行一組語(yǔ)句。 If condition Then statements [Else elsestatements ]
或者,使用塊形式的語(yǔ)法: If condition Then [statements] [ElseIf condition-n Then
[elseifstatements]] . . . [Else
[elsestatements]] End If
參數(shù)condition 一個(gè)或多個(gè)下面兩種類型的表達(dá)式: 數(shù)值或字符串表達(dá)式,其運(yùn)算結(jié)果是 True 或 False。如果 condition 是 Null,則 condition 被視為 False。 形如 TypeOf objectname Is objecttype 的表達(dá)式。objectname 是任何對(duì)象的引用,而 objecttype 則是任何有效的對(duì)象類型。如果 objectname 是 objecttype 所指定的一種對(duì)象類型,則表達(dá)式為 True;否則為 False。 Statements 如果 condition 為 True 時(shí),執(zhí)行的一條或多條(以冒號(hào)分開(kāi))語(yǔ)句。 condition-n 同 condition。 elseifstatements 如果相關(guān)的 condition-n 為 True時(shí),執(zhí)行的一條或多條語(yǔ)句。 elsestatements 如果前面沒(méi)有 condition 或 condition-n 表達(dá)式為 True 時(shí),執(zhí)行的一條或多條語(yǔ)句。 說(shuō)明對(duì)于短小簡(jiǎn)單的測(cè)試,可以使用單行形式(第一種語(yǔ)法)。但塊形式(第二種語(yǔ)法)提供了比單行形式更強(qiáng)的結(jié)構(gòu)化與適應(yīng)性,比較容易閱讀、維護(hù)及調(diào)試。 注意 在單行語(yǔ)法中,可以執(zhí)行多條語(yǔ)句作為 If...Then 判斷的結(jié)果,但所有語(yǔ)句必須在同一行上并且以冒號(hào)分開(kāi),如下列語(yǔ)句所示: If A > 10 Then A =A + 1 : B =B + A : C =C + B
當(dāng)程序運(yùn)行到 If 塊(第二種語(yǔ)法)時(shí),將測(cè)試 condition。如果 condition 是 True,則執(zhí)行 Then 之后的語(yǔ)句。如 condition 是 False,則每個(gè) ElseIf 部分的條件式(如果有的話)會(huì)依次計(jì)算并加以測(cè)試。當(dāng)找到某個(gè)為 True 的條件時(shí),則其相關(guān)的 Then 之后的語(yǔ)句會(huì)被執(zhí)行。如沒(méi)有一個(gè) ElseIf 語(yǔ)句是 True(或沒(méi)有 ElseIf 子句),則將執(zhí)行 Else 之后的語(yǔ)句。執(zhí)行 Then 或 Else 之后的語(yǔ)句以后,將繼續(xù)執(zhí)行 End If 之后的語(yǔ)句。 Else 和 ElseIf 子句都是可選項(xiàng)的。在 If 塊中可以放置任意多個(gè) ElseIf 子句,但是都必須在 Else 子句之前。If 塊語(yǔ)句可以被嵌套,即被包含在另一個(gè) If 塊語(yǔ)句之中。 要判斷某個(gè)語(yǔ)句是否是一個(gè) If 塊,可檢查 Then 關(guān)鍵字之后是什么。如果在 Then 的同一行之后還有其他非注釋的內(nèi)容,則此語(yǔ)句就是單行形式的 If 語(yǔ)句。 If 塊語(yǔ)句必須是某一行的第一條語(yǔ)句,并且必須以 End If 語(yǔ)句結(jié)束。 要求版本 1 返回首頁(yè) |