エクセルマクロの挫折しない勉強法や仕事で使いこなすコツを徹底解説!
講師の寺澤さんはこれまでの20年間マクロを使って様々な業務を効率化させるなど、数多くの社内表彰を受けてきました。例えば、数十万行の元データから分析用データを毎週作成する作業。人の手だと1週間かけても終わらない作業ですが、マクロを使うと30分程で完成してしまいます。さらに自ら社内講座も主催、全くマクロを触ったことがない数百人を指導し、満足度98%と人気を博しています。近著『4時間のエクセル仕事は20秒で終わる』では、そのエッセンスを余すところなく紹介しています。
本連載では、エクセルマクロを仕事で使うための本当に必要な知識だけを、できるだけわかりやすく説明していきます。

初心者でもわかるExcelマクロ入門! マクロが格段に使いやすくなるメッセージボックスの基本Photo: Adobe Stock

これまでのマクロはボタンを押すとすぐ動きはじめ、合図もなく終了します。これでは誤ったマクロが動き出したり、処理の完了がわからなかったりとミスの原因になります。これをメッセージボックスで防ぐ方法を身に付けましょう。わかりやすく使いやすいマクロになります。

単純なメッセージの出し方

まずは「処理が完了しました」というメッセージを出してみましょう。
マクロの最後に入れると処理が終わったことがわかりやすいです。
メッセージを出すときは「MsgBox」を使います。この後ろに" "(ダブルクォーテーション)で囲んだ文字を書きます。

MsgBox "処理が完了しました"

初心者でもわかるExcelマクロ入門! マクロが格段に使いやすくなるメッセージボックスの基本

完成させて動かしてみよう

「メッセージ1」という名前を付け、マクロを書きましょう。

初心者でもわかるExcelマクロ入門! マクロが格段に使いやすくなるメッセージボックスの基本

ボタンにマクロを登録し、保存した後に押してみてください。
「処理が完了しました」というメッセージが出れば成功です!

エラーが出たらチェック! よくある間違い

1 MsgBoxの綴りが間違っている
2 メッセージが" "(ダブルクォーテーション)で囲まれていない

メッセージボックスのタイトルを変える

メッセージボックス上部のタイトルも変えられます。

初心者でもわかるExcelマクロ入門! マクロが格段に使いやすくなるメッセージボックスの基本

先ほどのマクロの後ろをコンマで区切り「0」「タイトル」の順に記載します。この状態で再度実行し、確認してください。

MsgBox "処理が完了しました", 0, "確認"

初心者でもわかるExcelマクロ入門! マクロが格段に使いやすくなるメッセージボックスの基本

0を入れた意味とは?

先ほどのマクロで「"確認"の前に入れた0は何を表しているの?」と思ったのではないでしょうか。これはメッセージボックスに表示されるボタンの種類を変更する数字で、ボタンコードと呼ばれています。

覚えていただきたいのは「OK」を出す0と「はい/いいえ」の選択肢を出す4だけです。「メッセージ1」に書いた0を4に変更してみましょう。再度マクロを動かすとボタンが変わります。

初心者でもわかるExcelマクロ入門! マクロが格段に使いやすくなるメッセージボックスの基本

(本稿は、寺澤伸洋著『4時間のエクセル仕事は20秒で終わる』を抜粋、再構成したものです)

寺澤伸洋(てらさわ・のぶひろ)

初心者でもわかるExcelマクロ入門! マクロが格段に使いやすくなるメッセージボックスの基本

1976年、大阪府生まれ。灘高校、東京大学経済学部卒業後、日系メーカーで17年間勤務。経理や営業、マーケティング、経営企画などに携わり、独学で覚えたエクセルマクロを用いて様々な分析や業務改革を行う。2017年、GAFAの日本法人のうちの1社へシニアマネージャー(部長)として転職。これまでエクセルマクロを用いた業務改善などで数多くの社内表彰を受けている。手作業では不可能なほど大量のデータを、短時間で分析しやすく加工したことが評価され、社内エクセルマクロ講習会の講師として延べ200人以上に講座を実施。エクセルマクロについて1から10まで教える詰め込み型の学習ではなく、仕事に必要な部分だけを効率的に学べる講座として満足度98%の高い評価を受けている。