Debug.PrintとMsgBoxのイントロダクション
メニューを表示するにはスワイプしてください
どちらもコード実行中に値を確認できるが、対象となる利用者が異なり、混同しやすい点に注意が必要。
Debug.Print
Debug.Print [outputlist]
outputlist— 出力する1つ以上の式。;または&で連結可能。- 括弧や戻り値なし — 関数ではなくステートメント。
- 常にイミディエイトウィンドウに出力。
Debug.Print total ' one value
Debug.Print "Total: "; total ' semicolon — adds a space between items
Debug.Print "Total: " & total' & — concatenates with no extra space
MsgBox
MsgBox(prompt, [buttons], [title], [helpfile], [context])
MsgBox "Done." ' statement form — no parentheses needed
result = MsgBox("Continue?", vbYesNo, "Confirm") ' function form — parentheses required
MsgBox の引数に括弧を付けるのは、戻り値を取得する場合のみ。単なるステートメント(代入なし)として使う場合、括弧は不要です。MsgBox("Done.") でも動作しますが、2つ目の引数を代入なしで追加すると MsgBox ("Continue?", vbYesNo) のように構文エラーになります。ステートメント形式では括弧を省略し、result = MsgBox(...) のように書く場合のみ括弧を付けます。
それぞれの用途
簡単な判断基準:そのメッセージが実際に誰のためのものかを考える。「自分自身(コードを書いたりテストしたりしているとき)」が答えなら、Debug.Print を使うのが適切 — 一時的に残しても問題なく、後で削除しても影響がない。なぜなら、完成したワークブックを使う人には表示されないからである。「このマクロを今実行している人(表示が必要な人)」が答えなら、MsgBox を使うのが適切 — 確認プロンプトや「完了」メッセージなどはこのカテゴリに入り、デバッグ補助ではなく完成した体験の一部となる。
フィードバックありがとうございます!
AIに質問する
AIに質問する
何でも質問するか、提案された質問の1つを試してチャットを始めてください
Debug.PrintとMsgBoxのイントロダクション
どちらもコード実行中に値を確認できるが、対象となる利用者が異なり、混同しやすい点に注意が必要。
Debug.Print
Debug.Print [outputlist]
outputlist— 出力する1つ以上の式。;または&で連結可能。- 括弧や戻り値なし — 関数ではなくステートメント。
- 常にイミディエイトウィンドウに出力。
Debug.Print total ' one value
Debug.Print "Total: "; total ' semicolon — adds a space between items
Debug.Print "Total: " & total' & — concatenates with no extra space
MsgBox
MsgBox(prompt, [buttons], [title], [helpfile], [context])
MsgBox "Done." ' statement form — no parentheses needed
result = MsgBox("Continue?", vbYesNo, "Confirm") ' function form — parentheses required
MsgBox の引数に括弧を付けるのは、戻り値を取得する場合のみ。単なるステートメント(代入なし)として使う場合、括弧は不要です。MsgBox("Done.") でも動作しますが、2つ目の引数を代入なしで追加すると MsgBox ("Continue?", vbYesNo) のように構文エラーになります。ステートメント形式では括弧を省略し、result = MsgBox(...) のように書く場合のみ括弧を付けます。
それぞれの用途
簡単な判断基準:そのメッセージが実際に誰のためのものかを考える。「自分自身(コードを書いたりテストしたりしているとき)」が答えなら、Debug.Print を使うのが適切 — 一時的に残しても問題なく、後で削除しても影響がない。なぜなら、完成したワークブックを使う人には表示されないからである。「このマクロを今実行している人(表示が必要な人)」が答えなら、MsgBox を使うのが適切 — 確認プロンプトや「完了」メッセージなどはこのカテゴリに入り、デバッグ補助ではなく完成した体験の一部となる。
フィードバックありがとうございます!