共用方式為


開啟...GoSub,開啟...GoTo 語句

根據 表達式的值,分支至數個指定行的其中一行。

語法

On運算式GoSubdestinationlist
On運算式GoTodestinationlist

開啟...GoSubOn...GoTo語句語法包含下列部分:

部分 描述
運算式 此為必要動作。 任何評估為 0 到 255 之間整數的數 值表達 式,包括在內。 如果 expression 是整數以外的任何數位,則會在評估之前四捨五入。
destinationlist 此為必要動作。 以逗號分隔的 行號行標籤 清單。

註解

表達式的值會決定要在destinationlist中分支至哪一行。 如果 expression 的值小於 1 或大於清單中的專案數,則會發生下列其中一個結果:

運算式 Then
等於 0 控制項會卸載至下列語句:開啟...GoSub開啟...GoTo
大於清單中的專案數 控制項會卸載至下列語句 :開啟...GoSub開啟...GoTo
Negative 發生錯誤。
大於 255 發生錯誤。

您可以在相同的清單中混合行號和行標籤。 使用任意數目的行標籤和行號搭配 開啟...GoSubOn...GoTo。 不過,如果您使用的標籤或數位超過單一行的大小,則必須使用 行接續字元 ,將邏輯線條繼續到下一個實體行。

提示

選取 [案例 ] 提供更結構化且更有彈性的方式來執行多個分支。

範例

此範例使用 On...GoSubOn...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 支援與意見反應