スポンサーリンク

「Debug.Print」と「MsgBox」使い分けについて

debug_00.jpg Debug.Print
スポンサーリンク
スポンサーリンク

Loop構文を使う場合の確認は絶対に「Debug.Print」。視覚的な確認や[はい] [いいえ]で結果を変えたい場合は「MsgBox」。

始めに。

まずはLoop系の構文については「Debug.Print」が絶対にお勧め。サムネの様なコード(100回ループ)を書いた時に「MsgBox」を有効にすると、100回メッセージボックスが表示されます。うざいです。

サムネのコード。
↓↓↓  iを1から100まで順に進めて、その結果を表示するコードです。

Option Explicit
Sub テスト1()
Dim i As Long

For i = 1 To 100
Debug.Print i
MsgBox i
Next i

End Sub

↑このままコピペして実行すると、メッセージボックスが100回出ますのでご注意を。
エラーを出して回避する方法は「Esc」ボタン長押です。

「Debug.Print」ならば、サムネの様に、イミディエイトウィンドウへの記述のみとなります。

「Debug.Print」への出力について。

「debug.print」への出力は、わざわざそれ用に変数を指定しなくても結果が返ってくる事もメリットの一つです。フォントの色は何?とか、セルの背景色は何?などの情報も値として返ってきます。

下記の例では、A1セルを黄色にするコードです。

Option Explicit
Sub Macro6()
Range(“A1”).Select
Selection.Interior.Color = 65535 ”黄色
End Sub

このまま書くと「A1」セルの背景色を「65535」色にしました。
だけなのですが「65535」色という実績をマクロで記録して使い回せるというのも魅力です。
「赤なら何番の色」「緑なら何番の色」というのがプリセット以外でも自分で把握して、その色番号を使い回せるのはメリットと思います。

取得方法などは、別の記事に書きますが(マクロで簡単に記録できます)
使い回して取得した情報をテキストとして記録するには「Debug.Print」が向いています。

タイトルとURLをコピーしました