プロシージャ内のサブルーチンへ移動(GoSub…Return ステートメント)
GoSub…Return ステートメント
GoSub ステートメントは、指定したラベルのサブルーチンへプログラムの制御を移します。Return ステートメントは、制御を元に戻し、GoSub ステートメントの次の行から実行します。
GoSub subroutine
statements
subroutine:
statements
Return
引数・戻り値
- subroutine ・・・ サブルーチン名を指定します。
- statements ・・・ 実行するステートメントを記述します。
GoSub ステートメント と GoTo ステートメント の違いについて
GoSub ステートメント の場合、指定されたラベルへジャンプした後、もとの処理に戻るのに対して、GoTo ステートメント の場合は、行きっぱなしになります。
( ※ GoTo ステートメント の詳細に関しては、プロシージャ内のサブルーチンへ移動(GoTo ステートメント) を参照してください。)
- subroutine ・・・ サブルーチン名を指定します。
- statements ・・・ 実行するステートメントを記述します。
GoSub ステートメント と GoTo ステートメント の違いについて
GoSub ステートメント の場合、指定されたラベルへジャンプした後、もとの処理に戻るのに対して、GoTo ステートメント の場合は、行きっぱなしになります。
( ※ GoTo ステートメント の詳細に関しては、プロシージャ内のサブルーチンへ移動(GoTo ステートメント) を参照してください。)
GoSub…Return ステートメント 使用例
サンプルVBAソース
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 |
Sub Sample_GoSub() Dim num num = InputBox("数値を入力してください") If num > 0 Then GoSub MyRoutine End If MsgBox num Exit Sub MyRoutine: num = 100 / num Return End Sub |
実行結果
関連記事
-
変数やプロシージャのスコープ(適用範囲)
変数やプロシージャのスコープ(適用範囲) 【構文:変数の宣言】 { Dim | …
-
プロシージャを作成する( Sub, Function )
プロシージャを作成する プロシージャとは、実行時に 1 つの単位として処理される …
-
繰り返し処理(For Each…Next ステートメント)
For Each…Next ステートメントの使い方 【構文】 For …
-
引数を可変にする( ParamArray )
ParamArray キーワード ParamArray キーワードを使用すると任 …
-
エラー処理(On Error ステートメント / Errオブジェクト)
On Error ステートメントの使い方 【構文 1】 On Error GoT …
-
ユーザー定義型変数を使う(Type ステートメント)
Type ステートメントを使う Type ステートメントを使うと1つまたは複数の …
-
繰り返し処理(While…Wend ステートメント)
While…Wend ステートメントの使い方 【構文】 While …
-
繰り返し処理(Do…Loop ステートメント)
Do…Loop ステートメントの使い方 【構文 1】 Do [ Wh …
-
set ステートメントを使う
Set ステートメントを使う 【構文 1】 Dim objectvar [ As …
-
省略可能な引数・デフォルト値を設定( Optional キーワード )
Optional キーワード Optional キーワードを使用するとプロシージ …