GoTo ステートメントGoTo statement

プロシージャ内の指定行に無条件で分岐します。Branches unconditionally to a specified line within a procedure.


GoTo GoTo line

必要とされる_行_の引数は、どのような 行ラベルでも、行番号でもかまいません。The required line argument can be any line label or line number.


GoTo で分岐できるのは、同じプロシージャ内の行に限られます。GoTo can branch only to lines within the procedure where it appears.


GoTo ステートメントが多すぎる場合、コードの読み込みやデバッグが困難になります。Too many GoTo statements can make code difficult to read and debug. 可能な場所では、構造化されたコントロール ステートメント (Do...LoopFor...NextIf...Then...ElseSelect Case) を使用します。Use structured control statements (Do...Loop, For...Next, If...Then...Else, Select Case) whenever possible.


この例では、GoTo ステートメントを使用して、プロシージャ内の行ラベルに分岐しています。This example uses the GoTo statement to branch to line labels within a procedure.

Sub GotoStatementDemo() 
Dim Number, MyString 
 Number = 1 ' Initialize variable. 
 ' Evaluate Number and branch to appropriate label. 
 If Number = 1 Then GoTo Line1 Else GoTo Line2 
 MyString = "Number equals 1" 
 GoTo LastLine ' Go to LastLine. 
 ' The following statement never gets executed. 
 MyString = "Number equals 2" 
 Debug.Print MyString ' Print "Number equals 1" in 
 ' the Immediate window. 
End Sub

関連項目See also

サポートとフィードバックSupport and feedback

Office VBA またはこの説明書に関するご質問やフィードバックがありますか?Have questions or feedback about Office VBA or this documentation? サポートの受け方およびフィードバックをお寄せいただく方法のガイダンスについては、Office VBA のサポートおよびフィードバックを参照してください。Please see Office VBA support and feedback for guidance about the ways you can receive support and provide feedback.