VBA入門
VBEの使い方:ショートカットキーとコード編集

VBAの開発環境であるVBEの基本的な使い方
公開日:2019-10-01 最終更新日:2021-10-08

VBEの使い方:ショートカットキーとコード編集


VBE(Visual Basic Editor)は、VBAで使われるコードエディタ、コンパイラ、デバッガ、その他の開発支援ツールが統合された開発環境です。


ここではVBEのコード編集における、特に重要なショートカットキーと具体的な使い方について説明します。

VBEショートカット一覧

以下は、VBAコード編集に関するショートカットキーの中から、
VBE独特のものや重要なもの、注意が必要なものを抜粋しました。
※Ctrl+C等のWindows共通のショートカットキーや、使用頻度の低いものは省略しています。

ショートカット キー 説明
Ctrl + Space 入力候補
Tab インデント
Shift + Tab インデントを戻す
Ctrl + ↓ 次のプロシージャ
Ctrl + ↑ 前のプロシージャ
Shift + F2 定義の表示
Ctrl + Shift + F2 直前の場所に戻る
Ctrl + Z 元に戻す
Ctrl + Y 現在行の切り取り※やり直しではない
Ctrl + F 検索
Ctrl + H 置換
F3 次を検索
Shift + F3 前を検索

VBEの全てのショートカット一覧はこちらを参照してください。
・VBEの使い方について ・VBE キーボード ショートカット ・VBE メニュー ショートカット


ショートカットキーの具体的な使い方

Ctrl + Space 入力候補
Application、ThisWorkbook、ActiveWorkbook、等々
このような長い単語を全てタイピングするのは結構大変だと思います。
このような場合は、ぜひCtrl+Spaceを使ってください。

いきなりCtrl+Spaceで全候補を表示してから頭文字から入力していく方法と、
頭文字の何文字かを入力してからCtrl+Spaceする方法のどちらでも良いでしょう。

VBA VBE ショートカット

VBA VBE ショートカット

Tab インデント
Shift + Tab インデントを戻す
VBAのブロック構文内は必ずインデント(字下げ)してください。
ブロック構文とは、
Sub ~ End Sub
Function ~ End Function
If ~ EndIf
Select Case ~ End Select
For ~ Next
Do ~ Loop
With ~ End With

VBA VBE ショートカット


複数行をまとめてインデントまたはインデントを戻せます。
VBA VBE ショートカット

※1行内の文字列を選択した状態での「Tab」は、選択文字を消去してしまいます。

Ctrl + ↓:次のプロシージャ
Ctrl + ↑:前のプロシージャ
Ctrl +↓で、次のプロシージャーの先頭行に移動します。

Ctrl+↑で、前のプロシージャーの先頭に移動します、
ただし、プロシージャー内の途中行の場合は、当該プロシージャーの先頭に移動します。

移動先のプロシージャーが決まっている場合は、右上のドロップダウンリストから選択できます。

VBA VBE ショートカットキー

Shift + F2:定義の表示
Ctrl + Shift + F2:直前の場所に戻る
以下の動画は右クリックメニユーでの操作になりますが、これをショートカットで行えるという事です。
※ショートカットでは見た目で分からないので。

VBA VBE ショートカットキー

Ctrl + Z:元に戻す
Ctrl + Y:現在行の切り取り※やり直しではない
Ctrl + Zについては、Windows全般での共通ショートカットとなっていますので、特に説明は不要でしょう。
注意していただきたいのは、
エクセルでは、Ctrl+Yが「やり直し」(直前の「元に戻す」の実行前にする)ショートカットになっていますが、
VBEでは、現在行の切り取りとなっている事に注意してください。
エクセルでCtrl+Yを多用している場合は、手癖でやってしまう事もありますので、
やってしまった場合は、それこそCtrl+Zで戻してください。

Ctrl + F:検索
Ctrl + H:置換
F3:次を検索
Shift + F3:前を検索
検索/置換のショートカットは、Windows全般での共通ショートカットとなっていますので、
VBE特有の機能についてのみ説明します。

VBA VBE ショートカット

対象
カレント プロシージャー
入力カーソルのある編集中のプロシージャー
つまり、SubやFunctionプロシージャー単位です。

カレント プモジュール
入力カーソルのある編集中のモジュール
Module1やSheet1等の単位です。

カレント プロジェクト
入力カーソルのある編集中のプロジェクト
ブック単位という事です。

F3:次を検索 / Shift + F3:前を検索
「検索/置換」を行った後は、検索文字列はそのまま記憶されています。

検索文字列が記憶されている状態で、
F3/Shift+F3を押すと、入力カーソル位置から検索が開始されます。

検索文字列が記憶されていない状態(エクセルを起動してから初めて)で、
F3/Shift+F3を押すと、検索ダイアログが表示されます。


コメントアウト

VBAにコメントを書くことはとても重要ですし頻繁に行います。
ただし、コメントを書くときに先頭に'(シングルクォーテーション)を付けること自体が面倒という事はないでしょう。
面倒に感じるのは、コーディングの途中、
デバッグをしつつの試行錯誤の過程で、一部のコードをまとめてコメントアウトしたい時でしょう。
コメントアウトとは、
記述されているコードを処理されないようにすることです。
記述自体を消すことなく、そのコードが実行されない形で残しておけます。

VBEには、コメントアウトするためのショートカットキーが存在しません。
VBEの「ツールバー」の「ユーザー設定」を使って、ショートカットキーを割り当てる方法もあります。
WEBでやり方を紹介しているページも多数ありますので、興味のある方は検索してみてください。

コメントアウトするには、ツールバーを使います。
VBA VBE ショートカット

VBA VBE ショートカット コメント ブロック
選択行の先頭(入力文字位置に関係無く先頭)に'(シングルクォーテーション)を1つ付けます。

VBA VBE ショートカット 非 コメント ブロック
選択行の'(シングルクォーテーション)を先頭から1つ消します。

VBA VBE ショートカット


ショートカットとコード編集の最後に

VBAコード作成/編集を素早く効率的に行える事に越したことは無いでしょう。
手がマウスとキーボードを頻繁に行ったり来たりするのは、効率が悪いだけでなく、手も疲れてしまいますよね。

もちろんVBAを始めた当初は、ゆっくりVBAを記述していって良いです。
と言いますか、ゆっくりしかできないでしょう。
少しずつショートカットキーを使い慣れながら、自身に合ったコーディングスタイルを作っていければ良いと思います。




同じテーマ「マクロVBA入門」の記事

VBEの使い方:VBE画面の全体説明

・メニュー ・プロジェクト ・プロパティ ・その他のウィンドウ ・VBE画面の全体説明の最後に
VBEの使い方:ツールのオプション設定
・「メニュー」→「ツール」→「オプション」 ・編集 ・エディターの設定 ・全般 ・ドッキング ・ツールのオプション設定の最後に
VBEの使い方:ツールバー
・ツールバーの表示方法 ・デバッグ ・ユーザーフォーム ・標準 ・編集 ・ユーザー設定 ・ツールバーの最後に
VBEの使い方:右クリックメニューとヘルプ
・右クリックメニュー ・(F1) ・右クリックメニューとヘルプの最後に
VBEの使い方:ショートカットキーとコード編集
VBEの使い方:イミディエイト ウィンドウ
・イミディエイト ウィンドウの表示 ・イミディエイト ウィンドウの基本的な使い方 ・イミディエイト ウィンドウの高度な使い方 ・イミディエイト ウィンドウの最後に
VBEの使い方:ローカル ウィンドウ
・ローカル ウィンドウの表示 ・ローカル ウィンドウの基本的な使い方 ・ローカル ウィンドウの制限 ・ローカル ウィンドウの最後に
VBEの使い方:ウォッチ ウィンドウ
・ウォッチ ウィンドウの表示 ・ウォッチ ウィンドウとは ・「ウォッチ式の追加」の操作手順 ・ウォッチ式の追加 ・ウォッチ ウィンドウの制限と注意 ・ウォッチ ウィンドウの最後に
VBEの使い方:オブジェクト ブラウザー
・オブジェクトブラウザーの表示 ・オブジェクトブラウザーの使い方 ・クラスおよびメンバーの見方 ・オブジェクトブラウザーの最後に
VBEの使い方:デバッグ
・実行、中断、リセット(停止) ・ステップ実行 ・呼び出し履歴 ・VBA実行途中で変数の状態を確認 ・Debug.Print ・Debug.Assert ・デバッグの最後に


新着記事NEW ・・・新着記事一覧を見る

ブール型(Boolean)のis変数・フラグについて|VBA技術解説(2024-04-05)
テキストの内容によって図形を削除する|VBA技術解説(2024-04-02)
ExcelマクロVBA入門目次|エクセルの神髄(2024-03-20)
VBA10大躓きポイント(初心者が躓きやすいポイント)|VBA技術解説(2024-03-05)
テンキーのスクリーンキーボード作成|ユーザーフォーム入門(2024-02-26)
無効な前方参照か、コンパイルされていない種類への参照です。|エクセル雑感(2024-02-17)
初級脱出10問パック|VBA練習問題(2024-01-24)
累計を求める数式あれこれ|エクセル関数応用(2024-01-22)
複数の文字列を検索して置換するSUBSTITUTE|エクセル入門(2024-01-03)
いくつかの数式の計算中にリソース不足になりました。|エクセル雑感(2023-12-28)


アクセスランキング ・・・ ランキング一覧を見る

1.最終行の取得(End,Rows.Count)|VBA入門
2.セルのコピー&値の貼り付け(PasteSpecial)|VBA入門
3.RangeとCellsの使い方|VBA入門
4.ひらがな⇔カタカナの変換|エクセル基本操作
5.繰り返し処理(For Next)|VBA入門
6.変数宣言のDimとデータ型|VBA入門
7.ブックを閉じる・保存(Close,Save,SaveAs)|VBA入門
8.並べ替え(Sort)|VBA入門
9.セルのクリア(Clear,ClearContents)|VBA入門
10.Findメソッド(Find,FindNext,FindPrevious)|VBA入門




このサイトがお役に立ちましたら「シェア」「Bookmark」をお願いいたします。


記述には細心の注意をしたつもりですが、
間違いやご指摘がありましたら、「お問い合わせ」からお知らせいただけると幸いです。
掲載のVBAコードは動作を保証するものではなく、あくまでVBA学習のサンプルとして掲載しています。
掲載のVBAコードは自己責任でご使用ください。万一データ破損等の損害が発生しても責任は負いません。


このサイトがお役に立ちましたら「シェア」「Bookmark」をお願いいたします。
本文下部へ