
このDebug.PrintはVBAを学び始めた人が一番最初に覚えるべきコードのひとつです!Debug.Printを覚えると自分の書いたVBAの答え合わせができるようになります。
Contents (目次)
Debug.Printとは?
結論、自分が書いたVBAの変数や値を表示させることによって、思い通りの値が取得できているかを確認したり、Bugを見つけ出すためのものになっています。DebugとPrintはもともと下記のような意味です。
Debug = コンピュータのプログラムの誤り(=バグ)を見つけ、手直しをすること。デバッギング。虫取り。(引用元:Oxford Languages)Print = 表示を合わせたものです。
Debug.Printを使用するためには、下記のようにDebug.Printの後に何を表示させたいのかを記述する必要があります。
Debug.Print xxxxxxx '←ここのxxxxxxxに表示させたい変数を記載する
(実例-1) Debug.Print
ひとつ前の記事の下記コードを例にしてみましょう。
Sub test1 ()
Dim nomimono as String 'nomimonoを文字列として定義
nomimono = "cola" 'nomimonoという変数にcolaを代入
Debug.Print nomimono 'nomimonoという変数にcolaがちゃんと入っているか確認する
End Sub
成功例:変数がちゃんと定義されておりcolaと返事がくる

失敗例:nomimonoのスペルをnominomoにミスした

人間っぽくするとこんな感じ、、、

マクロ君、nomimonoって変数の中に僕何入れたっけ?(VBA:Debug.Print nomimono)

Kaitoさん、nomimonoの中はcolaっす!(VBA:cola)
(実例-2) Debug.Print
For~Nextという繰り返し処理がしっかり動作をしているか確認していきましょう。
Sub test2()
Dim i
For i = 1 To 10 ' 1回から10回まで以下の処理を繰り替えす
Debug.Print i '意図してる通りに動いているかテスト
Next i
End Sub
成功例:For~Nextの処理を10回行う。変数「i」は何回目の処理化をカウントしてイミディエイトウィンドウに表示させている。

人間っぽくするとこんな感じ、、、

マクロ君、1から10まで繰り返ししてひとつ終わる毎に僕に教えてくれない?

Kaitoさん、了解っす!
え~っと、1回終わって、2回終わって、3回終わって…(省略)…、10回終わりました!どうでしょう?!
Debug.Printの重要性
上記のようなシンプルなVBAでしたら、特にDebug.Printを使用しなくてもすぐに記述が誤っている箇所や上手くいっていない箇所を発見できるのですが、これからVBAの勉強が進んでくるにつれてVBAが複雑になっていくため、意図した通りに動かない場合はどこでBugが起きているのかをDebug.Printを使用して確認していく必要があります。
など上手くいかない箇所があれば常にこのDebug.Printを使用して動作確認をしていきます。
また、Debug.Printは、VBAの間違いを見つける以外にも、記述したコードをひとつひとつ確認して組み立てていくときにも頻繁に使用します。
VBEの詳しい使い方を覚える
Debug.Printがわかったら次に、Debug.Printを効率良く活用するために初心者が覚えるべきVBE(エディター)の設定や簡単な使い方を学んでいきましょう!
イミディエイトウィンドウの表示設定やステップイン、ブレークポイントなど初心者が覚えるべきVBEの機能を簡単に説明していきます。
小売販売員からキャリアをスタートし日系&外資系大手企業と3度の転職を成功させ、超大手外資系IT企業でデジタルマーケティング関連職に従事。WEBコンサルティング会社を起業し、マーケットプレイスを中心とした業務代行とコンサルティング、業務効率化のソフトウェア販売を行っています。
保有資格:3級FP技能士、2種証券外務員、ITパスポート、GAIQ、Goole広告各種プロフェッショナル認定資格














