上。。。GoSub,開啟...GoTo 語句
根據 表達式的值,分支至數個指定行的其中一行。
語法
On表達式GoSubdestinationlist
On表達式GoTodestinationlist
開啟...GoSub 和 On...GoTo 語句語法包含下列部分:
部分 | 描述 |
---|---|
運算式 | 此為必要動作。 任何評估為 0 到 255 之間整數的 數值表達 式,包括在內。 如果 expression 是整數以外的任何數位,則會在評估之前四捨五入。 |
destinationlist | 此為必要動作。 以逗號分隔的 行號 或 行卷標 清單。 |
註解
表達式的值會決定要在 destinationlist 中分支至哪一行。 如果 expression 的值小於 1 或大於清單中的項目數,則會發生下列其中一個結果:
若運算式為 | Then |
---|---|
等於 0 | 控制項會卸除至下列語句:開啟...GoSub 或開啟...GoTo。 |
大於清單中的項目數 | 控制項會卸除至下列語句 :開啟...GoSub 或 開啟...GoTo。 |
Negative | 發生錯誤。 |
大於 255 | 發生錯誤。 |
您可以在相同的清單中混合行號和行標籤。 使用任意數目的行標籤和行號搭配 開啟...GoSub 和 On...GoTo。 不過,如果您使用的標籤或數字超過單一行的大小,則必須使用 行接續字元 ,將邏輯線條繼續到下一個實體行。
提示
選取 [案例 ] 提供更結構化且更有彈性的方式來執行多個分支。
範例
此範例使用 On...GoSub 和 On...GoTo 語句,分別分支至子程式和行卷標。
Sub OnGosubGotoDemo()
Dim Number, MyString
Number = 2 ' Initialize variable.
' Branch to Sub2.
On Number GoSub Sub1, Sub2 ' Execution resumes here after
' On...GoSub.
On Number GoTo Line1, Line2 ' Branch to Line2.
' Execution does not resume here after On...GoTo.
Exit Sub
Sub1:
MyString = "In Sub1" : Return
Sub2:
MyString = "In Sub2" : Return
Line1:
MyString = "In Line1"
Line2:
MyString = "In Line2"
End Sub
另請參閱
支援和意見反應
有關於 Office VBA 或這份文件的問題或意見反應嗎? 如需取得支援服務並提供意見反應的相關指導,請參閱 Office VBA 支援與意見反應。