Excel VBA でデバッグを行う際に便利なのが イミディエイトウィンドウ です。
イミディエイトウィンドウを使うと、変数の値の確認やコードの一部の実行が簡単にできるため、デバッグ作業を効率化できます。
本記事では、イミディエイトウィンドウの表示方法、基本的な使い方、活用例 について解説します。
目次
イミディエイトウィンドウとは?
イミディエイトウィンドウ(Immediate Window) とは、VBA の開発環境(VBE)で変数の値を確認したり、コードを手動で実行したりできるウィンドウ です。
主な用途
✅ 変数の値をリアルタイムで確認
✅ コードの一部分を手動で実行
✅ Debug.Print を使ってデバッグ情報を表示
✅ 関数やメソッドの動作を確認
📌 イミディエイトウィンドウを使えば、VBA を実行せずに特定の処理を試せるので、開発スピードが向上!
イミディエイトウィンドウの表示方法
・ショートカットキーで開く
VBA のエディタ(VBE)で、次のキーを押します。
Ctrl + G
✅ すぐにイミディエイトウィンドウが開く!
・メニューから開く
- Excel で「Alt + F11」キーを押して VBA エディタ(VBE)を開く
- 「表示」メニューをクリック
- 「イミディエイトウィンドウ(Immediate Window)」を選択
📌 メニューから開けば、ウィンドウの非表示時でも確実に表示できる!
イミディエイトウィンドウの基本操作
・Debug.Print で変数の値を出力
イミディエイトウィンドウでは、Debug.Print を使うことで、変数の値を簡単に表示 できます。
【コード例: 変数の値を確認】
Sub TestDebugPrint()
Dim message As String
message = "Hello, VBA!"
Debug.Print message ' → イミディエイトウィンドウに出力
End Sub
【実行結果】(イミディエイトウィンドウ)
Hello, VBA!
✅ コードを実行するたびに Debug.Print の結果がイミディエイトウィンドウに表示される!
✅ メッセージボックス(MsgBox)を使わずにデバッグ可能!
・変数の値を手動で確認
イミディエイトウィンドウでは、現在の値を手動で確認することも可能 です。
手順
- VBA を一時停止(ブレークポイントまたは
Stopを使用) - イミディエイトウィンドウに変数名を入力し、Enter を押す
【コード例】
Sub TestImmediate()
Dim num As Integer
num = 100
Stop ' ← ここで実行を一時停止
End Sub
【イミディエイトウィンドウに入力】
? num
【結果】
100
✅ コードを停止した状態で ? 変数名 と入力すると、現在の変数の値が確認できる!
・直接コードを実行
イミディエイトウィンドウでは、1行のVBAコードを直接実行 できます。
【例】
イミディエイトウィンドウに以下のように入力し、Enter を押します。
Range("A1").Value = "Test"
✅ VBA の実行なしで、セル A1 に "Test" を入力できる!
【他の例】
MsgBox "Hello!"
✅ メッセージボックスがすぐに表示される!
イミディエイトウィンドウの活用例
ワークシートの情報を取得
【例】現在のシート名を取得
? ActiveSheet.Name
✅ アクティブなシートの名前が表示される!
最終行・最終列を取得
Sub GetLastRow()
Dim lastRow As Long
lastRow = Cells(Rows.Count, 1).End(xlUp).Row
Debug.Print "最終行: " & lastRow
End Sub
✅ データの最終行をイミディエイトウィンドウに表示!
すべてのシート名を取得
For Each ws In Worksheets: Debug.Print ws.Name: Next
✅ ブック内のすべてのシート名が一覧表示される!
ループを試す
For i = 1 To 10: Debug.Print "値:" & i: Next
✅ 1から10までの値をイミディエイトウィンドウに表示!
イミディエイトウィンドウのメリット
| メリット | 説明 |
|---|---|
| デバッグが簡単 | Debug.Print を使って変数の値を確認できる |
| 即時実行可能 | 1行のVBAコードを手動で実行できる |
| コードの修正不要 | MsgBox を使わずにデバッグできるので、コードを修正する必要がない |
| ループや条件分岐の動作確認 | 実際にコードを実行せずに、イミディエイトウィンドウでテスト可能 |
まとめ
💡 イミディエイトウィンドウの使い方
✅ ショートカットキー(Ctrl + G)で開く
✅ Debug.Print を使って変数の値を確認
✅ ? 変数名 で手動で値を表示
✅ コードを1行ずつ手動で実行できる