初心者でも図解で分かる! VBEの基本的な使い方とVBAプログラムの基礎文法:Excelマクロ/VBAで始める業務自動化プログラミング入門(2)(4/4 ページ)
プログラミング初心者を対象にExcelマクロ/VBAを使った業務自動化プログラムの作り方を一から解説します。今回は、VBAのオブジェクト、プロパティ、メソッド、関数、算術演算子、コメント、VBEの画面構成や使い方などについて【Windows 10、Excel 2016に対応】。
マクロを入力する際に便利なVBEの入力支援機能
「Subプロシージャ」内にマクロコードを入力してみよう。ここでは、リスト2のようなマクロコードを入力する。
Sub 住所と名前() Range("A1").Value = "愛媛県松山市道後" Range("A2").Value = "薬師寺国安" End Sub Sub 確認() MsgBox Range("A2").Value & "さんは" & Range("A1") & "にお住まいですね。" End Sub
マクロコードを入力する場合には、入力支援機能が利用できる。例えば、「R」と入力し[Ctrl]+[スペース]キーを押すと、「R」で始まるメソッドやプロパティなどの候補の一覧が表示され、その中から目的ものを選択できる。また、「MsgBox」のように関数やメソッド名を入力して[スペース]キーを押すと、引数の情報など、ヒントが表示される。
これらの入力支援機能は、実際にマクロコードを書いてみると実感できるので、その時に確認してみてほしい。実際に自分で書いて確認することが重要だ。
ではリスト1のマクロを実行してみよう。その前に、各「Sub プロシージャ」を関連付けるボタンを配置しておく。ボタンの配置については、第1回目を参照してほしい。
ボタンからマクロを実行する
図12のように2つのボタン([挿入]→[図形]から選択)を配置し、各ボタンを選択して、名前を入力する。マウスの右クリックで表示される[マクロの登録]から、表示される「住所と名前」「確認」のマクロをそれぞれのボタンに指定する。ボタンを配置してマクロを関連付ける方法の詳細については、連載第1回を参照してほしい。
[住所と名前]ボタンをクリックすると、図13のように表示され、[確認]ボタンをクリックすると、図14のようにダイアログボックスが表示される。
VBAの「コメント」とは
最後に、コメントの入力について簡単に触れておこう。「コメント」とは、マクロコードの中に書く「これはどんな処理を行っているマクロなのか」を、誰が見ても分かるようにしておく「メモ」のようなものだ。
コメントの入力
マクロの中にコメントを書く場合は先頭に「'」を追加して記述する。図15のように記述する。
コメントを入力しておくと、複雑な処理の場合、数年後にマクロの修正が必要になった場合など、忘れていた記憶を取り戻すのに大変重要な役割を果たす。また、担当者が変わり、マクロを引き継ぐ場合にも、コメントが役に立つので、必ずコメントは記入しておくよう心掛けよう。そういう筆者自身はあまりコメントを記入しない性格なので、後々になって冷汗をかいている……。
数百行のマクロを手軽にコメントにできるVBEの機能
またマクロコードの中で、今回はこのマクロは不要だが後々のために残しておきたい場合などにも、マクロの先頭に「'」を追加して「コメントアウト」しておく。
数百行のマクロに、いちいち「'」を手で追加していたのではたまらない、そこで、VBEのメニューから[表示]→[ツールバー]→[編集]と選択して[ツールバー]を表示させる。表示された[ツールバー]の[コメント ブロック]をクリックすると、選択していたマクロコードが一括でコメントアウトされる(図16)。
コメントを外したい場合
コメントを外したい場合は、外したいマクロコードを選択し、[ツールバー]の[コメント ブロック]の右横にある[非コメント ブロック]をクリックするとコメントアウトが解除される。
次回も、Excel VBAの基礎知識の続編
今回はこれで終わりだ。今回はプログラムに関する専門用語も出てきたが、これらは最低限、覚えておかねばならない用語だ。用語の意味をある程度理解しておかないと、マクロコードを書くことが難しくなるので、よく読んで理解して、というより、覚えておいてほしい。
次回は、Excel VBAの基礎知識の続編で、変数やデータ型について解説する予定だ。お楽しみに。
■更新履歴
【2016/7/7】Windows 10、Excel 2016に対応しました。
参考書籍
著者プロフィール
PROJECT KySS 薬師寺 国安(やくしじ くにやす)
1950年生まれ。フリーVBプログラマ。高級婦人服メーカーの事務職に在職中、趣味でVBやActiveXに取り組み、記事を執筆。2003年よりフリー。.NETやRIAに関する執筆多数。Windowsストアアプリも多数公開中(約270本)。
Microsoft MVP for Development Platforms - Client App Dev (Oct 2003-Sep 2012)。
Microsoft MVP for Development Platforms - Windows Phone Development(Oct 2012-Sep 2013)。
Microsoft MVP for Development Platforms - Client Development(Oct 2013-Sep 2014)。
PROJECT KySSは、1997年に薬師寺聖と結成したコラボレーション・ユニット
Copyright © ITmedia, Inc. All Rights Reserved.
関連記事
- Excelマクロ/VBAリファレンス用途別・キーワード別一覧超まとめ
- ピボットテーブルとは何か──「そもそも、何をする機能か」を理解する
Excelを通じて「ピボットテーブル」の基礎を学び、データ分析を実践するまでを習得する本連載。初回はピボットテーブルの基礎と、「どんなことができるのか」を解説する。 - どんなビジネスにも欠かせないリレーショナルデータベースの基礎知識と作り方――テーブル、レコード、フィールド、主キーとは
Accessを通じて、初心者がリレーショナルデータベースやSQLの基本を学び、データベースを使った簡単なシステムの作り方を習得する本連載。初回はデータベースの基本を理解し、Accessを使い始めてみよう。