VBE(エディタ)の設定とカスタマイズで開発効率を上げる方法|Option Explicit・フォント・イミディエイトウィンドウ

VBEの設定を整えるだけで、タイプミス防止・コードの見やすさ・デバッグ効率が大きく改善します。特に「変数の宣言を強制する(Option Explicit)」の設定は最初に必ず確認しておきたい項目です。環境整備に5分かけるだけで、その後の開発が格段にスムーズになります。

この記事では、次の内容を順番に解説します。

  • Option Explicitを自動追加する設定
  • 自動構文チェックのオン・オフの使い分け
  • フォント・サイズ・色の見やすい設定
  • インデント幅・イミディエイトウィンドウの活用
  • 設定をまとめて確認するチェックリスト

Option Explicitを自動追加する設定をするには?

VBAはデフォルトでは変数を宣言しなくても動きます。これがタイプミスに気づけない最大の原因です。「変数の宣言を強制する」を設定しておくと、新しいモジュールを作るたびに自動で Option Explicit が先頭に追加されます。

設定手順:

  1. VBEを開く(Alt+F11)
  2. メニューの「ツール」→「オプション」を開く
  3. 「編集」タブの「変数の宣言を強制する」にチェックを入れる
  4. OKを押す
'Option Explicitなし → スペルミスに気づけない
Sub BadExample()
    total = 100
    totla = total + 50   '← 新しい変数として処理されてしまう
    MsgBox totla         '→ 50が表示される(totalの100は無視)
End Sub

'Option Explicitあり → コンパイルエラーになり気づける
Option Explicit

Sub GoodExample()
    Dim total As Long
    total = 100
    totla = total + 50   '← コンパイルエラー!すぐ気づける
End Sub

この設定は新規モジュールにのみ自動追加されます。既存のモジュールには手動で先頭に追記してください。

自動構文チェックをどう設定するには?

デフォルト設定では、1行書き終えた瞬間に構文ミスがあるとポップアップが表示されます。コードを書くリズムを止めたくない場合はオフにするのも有効です。

設定動作向いている人
自動構文チェック:オン(デフォルト)1行書くごとにポップアップで警告初心者・エラーをその場で確認したい人
自動構文チェック:オフポップアップなし。エラー行は赤文字で表示書くスピードを止めたくない人

オフにする手順:「ツール」→「オプション」→「編集」タブ→「自動構文チェック」のチェックを外す。オフにしても構文ミスのある行は赤文字で残るため、見落としは起きません。

コードを見やすくするフォントと色の設定をするには?

設定場所:「ツール」→「オプション」→「エディターの書式設定」タブ

フォントとサイズのおすすめ:

  • フォント:MS ゴシック または Consolas(等幅フォントが読みやすい)
  • サイズ:12〜14pt(小さいと見落としが増える)

コードの種類ごとに色が分かれています。変更するとコードの意味がひと目でわかりやすくなります。

コードの種類デフォルトの色用途
通常のテキスト通常のコード
キーワードSub・Dim・If・For など
コメント‘(シングルクォート)以降の説明文
構文エラー文法ミスのある行
実行中の行(ステップ実行時)黄色背景現在実行している行

インデント幅とイミディエイトウィンドウを活用するには?

インデント幅:「ツール」→「オプション」→「編集」タブの「タブストップ幅」で変更できます。デフォルトは4で、2〜4が一般的です。インデントはコードの構造を視覚的に示すために重要です。

'インデントが揃ったコード(読みやすい)
Sub GoodIndent()
    Dim i As Long
    For i = 1 To 10
        If Cells(i, 1).Value > 0 Then
            Cells(i, 2).Value = "正の数"
        End If
    Next i
End Sub

イミディエイトウィンドウ:Ctrl+G で開くデバッグ用の出力エリアです。Debug.Print で出力した内容がここに表示されます。

Sub CheckValues()
    Dim i As Long
    For i = 2 To 5
        Debug.Print "i=" & i & " / 値=" & Cells(i, 1).Value
    Next i
End Sub

実行後にイミディエイトウィンドウを確認すると各行の値が記録されています。MsgBox と違いクリックが不要なため、ループ中の値確認に特に便利です。

設定をまとめて確認するには?

VBEを使い始めたら、次の項目を一度確認しておきましょう。

設定項目場所おすすめの設定
変数の宣言を強制するツール→オプション→編集タブ✅ チェックを入れる(必須)
自動構文チェックツール→オプション→編集タブ好みに合わせて(慣れたらオフでもOK)
タブストップ幅(インデント)ツール→オプション→編集タブ2〜4(デフォルトは4)
フォントとサイズツール→オプション→エディターの書式設定タブ等幅フォント・12〜14pt
イミディエイトウィンドウCtrl+G または表示メニュー常に表示しておくと便利

まとめ

  • 「変数の宣言を強制する」は最優先で設定する。新しいモジュールに自動で Option Explicit が付くようになる
  • 自動構文チェックはオフにするとポップアップがなくなり、エラー行は赤文字で残る
  • 等幅フォントの12〜14ptでコードが読みやすくなり、長時間作業の疲労も軽減できる
  • インデント幅はデフォルトの4で十分。揃ったインデントがコードの構造を視覚的に示す
  • イミディエイトウィンドウ(Ctrl+G)は常に開いておき、Debug.Printと組み合わせてデバッグに活用する

よくある質問

Option Explicitの設定後、既存のコードが動かなくなりました

宣言せずに使っていた変数がコンパイルエラーになっています。エラーになった変数を Dim で宣言することで解決します。面倒に感じるかもしれませんが、これを機に宣言漏れを修正しておくと後々のバグを防げます。

VBEのフォント設定を変えると既存のコードにも反映されますか?

反映されます。VBEのフォント設定はエディタ全体に適用されるため、既存のすべてのモジュールの見た目が変わります。コードの内容(文字データ)には影響しません。

イミディエイトウィンドウに出力した内容を消すには?

イミディエイトウィンドウ内でCtrl+Aで全選択してDeleteキーを押すと消去できます。マクロを実行するたびに追記されるため、確認後は適宜クリアしておくと見やすくなります。

自動インデント機能はありますか?

VBEには自動インデント機能は標準搭載されていません。ただし、If 〜 End IfFor 〜 Next などのブロック構造で改行すると、次の行が自動的に1段インデントされます。手動でインデントを調整する場合はTabキーとShift+Tabキーを使います。

VBEの画面構成をカスタマイズできますか?

プロジェクトウィンドウ・プロパティウィンドウ・イミディエイトウィンドウは、ドラッグで位置や大きさを変えられます。「表示」メニューから各ウィンドウの表示・非表示も切り替えられます。自分が使いやすいレイアウトに整えておくと作業効率が上がります。


動画で学びたい方へ

「記事を読んでも、実際に自分で書けるか不安…」という方には、動画で基礎からじっくり学べる講座がおすすめです。

VBAが初めての方を前提に、つまずきやすいポイントを先回りして解説しています。サンプル動画は無料でご覧いただけます。

動画で学ぶExcelマクロ|JIMOVEオンラインスクール

コメントする

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

上部へスクロール