【VBE】サブルーチンへジャンプ![Shift] + [F2]

2012年1月7日

マクロの一部をサブルーチン(別のプロシージャ)として記載することがあります(例を記事後半に記載しました)。

サブルーチンにて1つの処理をするようにします。

このように、処理の一部を部品化して分離することで、プログラム自体を見やすくしたり、エラー処理をしやすくすることができます。

また、別のプログラムで同じ処理をする場合には、複数のプログラムから同じ処理を実行することができるので、冗長なプログラムの記載を避けることができます。

サブルーチンの方法については、「かんたんプログラミングExece VBA 応用編」に詳しく解説されていますのでご覧ください。

さて、本日はそのようなサブルーチンを使っているときに、VBE にて呼び出すサブルーチンの内容を確認したり、または親のプロシージャに戻ったりするのに便利なショートカットキーです。

便利なショートカットキー

[Shift] + [F2]   呼び出すサブルーチンにカーソルを移動します。

[Shift] + [Ctrl] + [F2] 親のプロシージャにカーソルを戻します。

使い方

たとえば、以下の参考マクロでは、CallステートメントにてMessage_1とMessage_2というサブルーチンを呼び出しています。

例えば、親プロシージャ(例では、「メッセージ表示」)にあるサブルーチン名(例では、「Message_1」)にカーソルを置きます。

VBE

[Shift] + [F2] を押すと、カーソルが、そのサブルーチン(例では、「Message_1」)に移動します。

VBE

呼び出すサブルーチンは、親プロシージャ(例では、「メッセージ表示」)から離れている場合がありますから、わざわざモジュール内を探すのは大変です。

そして親プロシージャに戻る場合(元の場所に戻る場合)には、[Shift] + [Ctrl] + [F2] を押します。

このようなときに非常に便利ですね。

参考マクロ

あまり意味のないプログラムになってしまって申し訳ありません。メッセージを表示するサブルーチンを2回呼び出すマクロです。


Sub メッセージ表示()
 Call Message_1
 Call Message_2
End Sub

Private Sub Message_1()
 MsgBox "1つめのメッセージ"
End Sub

Private Sub Message_2()
 MsgBox "2つめのメッセージ"
End Sub

-コード
-, ,