目次
目的・完成イメージ
今回は、以下の画像のようなメッセージを Excel の画面上に表示するマクロを作成してみたいと思います。
VBA の MsgBox 関数を使用すれば、自由なメッセージを Excel の画面上に表示することができるようです。
その方法の一例
Excel VBA のコード:
Sub macro_003011()
MsgBox ("message")
End Sub
上のマクロ「macro_003011」を実行すると、以下の画像のようなメッセージが表示されると思います。
日本語を表示
MsgBox 関数で日本語を表示することもできるようです。改行を入れたい場合も考えて、改行の入った日本語の文章をメッセージとして表示してみたいと思います。
日本語はそのまま入力すれば良く、下記コード「macro_003011_001」中の定数「vbNewLine」が改行として認識されるようです。前後のアンパサンド( & の記号)で改行前後の文字と連結しています。
定数「vbNewLine」は OS 毎の最適な改行文字を出力してくれるようです。私の Windows10 パソコンでは、「vbNewLine」の文字は Chr(13) と Chr(10) に置き換わって出力されていました。 Macintosh のパソコンでは、また違った結果になるのだと思います。
改行文字は目に見えないですが、パソコンの内部的には、Windows で Chr(13) と Chr(10) が入力されている場合には、改行を表示するという風に文字として処理されているようです。
Excel VBA のコード:
Sub macro_003011_001()
MsgBox ("メッセージ" & vbNewLine & "メッセージ") 'vbNewLine が最適な改行文字に変換されて出力されるようです。
End Sub
テスト環境
- Windows 10
- Microsoft Office Excel 2003
あとがき
MsgBox 関数のダイアログボックスには、「OK」ボタンだけではなく、「はい」「いいえ」「キャンセル」などのボタンも表示できるようです。どのボタンを押したのかによって、処理を分岐したりできるようです。そのことは、また次の機会に投稿していきたいと思います。
一行の簡単なマクロでしたが、画面に目に見える形で実行結果を確認できるので、できた感がありました。
以上、閲覧ありがとうございました。