【VBA】マクロ実行中に指定コードまでジャンプ!GOTO文の使い方!

f:id:yshgs_elec:20210221221022p:plain

この記事では、マクロ実行中に途中のコードを飛ばして、指定したコートまでジャンプできるGOTO文の使い方をご紹介していきます。

 

サンプルコートを実際に動かして説明していきますので、初心者でもわかりやすい内容になっていると思います。

 

ぜひ最後までご覧ください。

 

それでは早速やっていきます!

スポンサーリンク

GOTO文の使い方

まずはじめに、今回の記事の主人公であるGOTO文についてご紹介します。

 

GOTO文の基本的な使い方は以下の通りです。

GOTO 変数
間の処理
変数:

これで間に記載されている処理をすっ飛ばすことができます。

 

この状況だけ見ると

「じゃーコード書くなよ。」

って思われると思いますが、基本的にはGOTO文はIF文なんかと組み合わせて使うことになります。

 

というわけでここからは、IF文を組み合わせたときの実際の使用例をご紹介していきます。

スポンサーリンク

GOTO文の実際の使用例

今回は以下の画像のようにA1セルになんらかのデータを入力しておき、A1セルのデータが1だった場合はA2セルには何もしない、そうでない場合はA2セルにはtestという文字が入る、という処理をGOTO文をつかってやってみようと思います。

GOTO文を適用する際の作業イメージ説明

◆GOTO文のサンプルコード

Sub test_goto()
    Dim i As Variant
    i = Cells(1, 1)
    'GOTO文サンプル
    If i = 1 Then
        GoTo jump_point
    End If
    '適当な処理
    Cells(2, 1) = "test"
'飛ぶ場所
jump_point:
End Sub

今回はGOTO文の出発点と到着点を示すためにjump_pointという文字を使っています。

ここはあなたが処理をしていてわかりやすい文字を適当に使えばOKです。

 

実行結果は以下の通りです。

◆A1セルが1だった場合

GOTO文が機能した際の実行結果

◆A1セルが1以外だった場合

GOTO文が機能しなかった際の実行結果

問題なく処理は動いているみたいですね。

(今回は単純なIF文だったので、GOTO文を使う必要はなかったのですが、もっと複雑な分岐条件を扱うような場合だと、このGOTO文は非常に便利ですよ。)

スポンサーリンク

おわりに

というわけで今回はマクロ実行中に指定したコードのところまでジャンプできるGOTO文の使い方をご紹介しました。

知っておくだけで、複雑な処理に対応できるようになりますので、ぜひマスターしておきましょう。

 

このように、私のブログではエクセルスキルはもちろん、様々なプログラミングスキルを紹介しています。

 

今は仕事中で時間がないかもしれませんが、ぜひ通勤時間中などに他の記事も読んでいただけると嬉しいです。

⇒興味をもった方は【ヒガサラ】で検索してみてください。

確実にスキルアップできるはずです。

 

最後に、この記事が役に立ったという方は、ぜひ応援よろしくお願いします。

↓ 応援ボタン

にほんブログ村 IT技術ブログ VBAへ
にほんブログ村

それではまた!

コメント

タイトルとURLをコピーしました