![見出し画像](https://assets.st-note.com/production/uploads/images/138091517/rectangle_large_type_2_bc6765735d0a95e0a8e26e794a14945b.png?width=1200)
【Day20】文系オタクのエンジニア道~指定したところから処理 GoToステートメント~
こんにちは
安田です
今回は条件分岐の中の
指定したところにジャンプする
GoToステートメントについてです
任意の指定したところから処理を開始する
GoToステートメントのコード
Sub ジャンプさせる()
'GoTo 第三部
MsgBox "第一部 ファントムブラッド"
MsgBox "第二部 戦闘潮流"
'第三部:
MsgBox "第三部 スターダストクルセイダース"
End Sub
いま、コメントアウトしておりますが
第三部 スターダストクルセイダースまで飛ばすためには
GoToラベル名(任意)
ラベル名:
で囲います
上のコードでは、第一部から順番にメッセージボックスが表示されます
コメントアウトを解除すると
第三部のメッセージボックスのみが表示されるようになります
いくつかのパターンで処理を変える
Sub 乱数()
Dim x As Integer
'乱数を表示させる
x = Application.WorksheetFunction.RandBetween(1, 3)
MsgBox x
'乱数で出てきた数字に応じて処理が変わる
Select Case x
Case 1
GoTo 第一部
Case 2
GoTo 第二部
Case 3
GoTo 第三部
End Select
Exit Sub
第一部:
Range("A1").Value = "ファントムブラッド"
第二部:
Range("B1").Value = "戦闘潮流"
第三部:
Range("C1").Value = "スターダストクルセイダース"
End Sub
乱数で表示された数値が「1」の場合は
第一部のラベルにジャンプして、それ以下の処理を実行
(ファントムブラッド、戦闘潮流、スターダストクルセイダースが表示)
乱数で表示された数値が「2」の場合は
第二部のラベルにジャンプして、それ以下の処理を実行
(戦闘潮流、スターダストクルセイダースが表示)
乱数で表示された数値が「3」の場合は
第三部のラベルにジャンプして、それ以下の処理を実行
(スターダストクルセイダースが表示)
まとめ
以前、笑わせるセールスマンさんからコメント頂いていたところが
ようやくつながった感じがしました
理解に時間がかかりました(;・∀・)
一つずつ、点と点が繋がり線となり
線と線を繋いで面にして
面を重ねて立体化させていくと
自分の中に定着していくかなと思います
「VBAマスターに俺はなる」
最後まで読んでいただき
ありがとうございます
安田
マガジンにまとめてありますので
よかったらそちらも御覧ください