VBEの表示方法が分かる動画を用意
VBA-1の中でマクロは作業の集合体だと説明しました。
マクロは保存出来るという事も前回の記事で勉強しています。
という事はマクロはデータ内のどこかに居るはずです。
でもメインの画面にはセルの画像しかないです。どこに居るのか気になりませんか?
あまり知られていないのですがExcelは標準機能でマクロを書く場所を持っています。
VBE(Visual Basic Editor)と呼ばれています。
建付けとしてはセルの画面以外の領域に作業の情報を持っています。
そこからセルの画面に向けて命令を出すという事をしています。以下で具体的に解説していきます。
前回の記事
データの保存方法について紹介しました。今回は開発環境について勉強していきましょう。
前回記事は「VBA-1.5」です。データの保存方法について解説しています。
本記事での課題
今回の課題です。
VBEを理解する
VBEについて勉強していきます。最初に動画を見ていただきます。
その後各要素の説明という流れで解説していきます。
まず動画を視聴してください
事前に一連の流れを確認するために動画を用意しました。1分ちょっとの動画ですので見やすいと思います。
動画の中では「標準モジュール」を用意する方法も準備してあります。是非ご覧ください。
動画のおさらいをしましょう。VBEの表示方法は以下の通りです。
その後は開発タブを選択。一番左にあるVisualBasicというアイコンをクリックします。
これでVBEを表示させることが出来ます。結構簡単ですよね。
動画ではコードを書いたり配色の事(使い方関連)についても触れています。次回以降の記事で紹介していきます。
VBEとは
続いてVBEとはどんなものなのかを文字で説明していきます。
まずは名称ですね。VBEの正式名称はVisualBasicEditorです。頭文字をとって「VBE」と呼ばれています。
以降は「VBE」という表記を使って記事を書いていきます。
役割としては「コードを書く場所」です。一般的にプログラミングではコードを書く場所をエディタと呼びます。
エディタでコードを書いて実行することで(実行環境セルの画面)に影響を与えるという構図になっています。
動画でも見ていただきましたがこれがVBEです。少し下の画像をご覧ください。
VBEは「Alt +F11」というショートカットキーでも表示できます。これなら簡単に表示させることができますね。
ご注意ください
以下画像では各画面が青くなっていますが説明用であえて色を付けています。ご了承ください。
動画ではウォッチウインドウは表示されていましたが上の画像には無いです。
ウォッチウインドウはこのシリーズでは紹介しませんのでこのまま進めます。
各種要素の役割について
VBEに配置されているそれぞれの要素が担当している仕事を紹介します。
番号 | 要素 | 仕事内容 |
---|---|---|
1 | プロジェクトエクスプローラ | データの構成をツリー状に表示 |
2 | コードウインドウ | コードを書く場所 |
3 | プロパティウインドウ | データの属性を表示 |
4 | ローカルウインドウ | オブジェクトや変数の状態を表示 |
5 | イミディエイトウィンドウ | デバッグ(テスト)用 |
プロジェクトエクスプローラ
ここには起動させたExcelデータの構成を表示しています。
どんなモジュールを持っているのかがツリー状に表示されて一目で分かる様に配置されています。
先に申し上げておきます。最初は標準モジュールは画面にない状態です。
今回は説明が必要なためツリーの中に標準モジュールが居る画像を使っています。ご注意ください。
では上に配置されたモジュールから説明していきます。
トップにVBAproject・・・というBook名と同じ名前で構成の頂点になる親が存在しています。
ひとまず様々オブジェクトの操作をするうえでのコントロールタワーだと思っておいてください。
この親に紐付いてMicrosoft Excel Objects が並びます。
シートモジュールはシートに依存します
イメージですが多くの方が見ているであろうセルの画面はSheet1(Sheet1)と表示されたものになります。
シートごとにセルの画面を持っているのはいつも見ているので馴染みがあると思います。
合わせてコードを書く画面も持っています。
上の画像には未だ居ませんが Sheet2・・・の様にシートを追加するとここにモジュールが追加されます。
最初のうちはここには何も書かない様にしましょう。理由はこちらに書いてあります。
しかし今は理解出来ないので初心者を卒業してからご覧ください。
ThisWorkbookモジュールはBookに紐づくイベント用
ここにはExcelBook自体が開いたときに行う作業を書きます。
データを×ボタンで終了させるときに合わせて行う作業などもこちらに記載します。
最後にデフォルトでは表示されていませんが標準モジュールというものがあります。
このシリーズで実際にコードを書くのは標準モジュールになります。
標準モジュールは追加したらいくらでも追加できますが最初は1つだけにしておきましょう。
標準モジュールの出し方については先程動画で解説していますので動画をご覧ください。
なぜ標準モジュールに命令を書くのか
話をもとに戻します。標準モジュールにコードを書くのは以下のような事が出来るからです。
なぜ標準モジュールにコードを書くとブック全体に影響を及ぼすことが出来るのかを説明していきます。
プロジェクトエクスプローラのツリーを見てください。
標準モジュールとシートモジュールがいるMicrosoft Excel Objectsは並列です。
並列なので標準モジュールに書いた命令はシートモジュールには届きません。
ここで登場するのが先程コントロールタワーと紹介した親モジュールです。
親である「VBAProject・・・.xlsm」に一旦情報を受けてもらいます。
その後各シートモジュールに命令を展開してもらいましょう。
これで標準モジュールの命令がシートモジュールに展開されるようになっている事が分かりましたね。
以下画像は標準モジュールからシートモジュールへの指示の流れ(イメージ)です。
プロパティウィンドウ
今回のシリーズでは使わないです。主にユーザーフォームを勉強する際にしっかり使う機能になります。
入力や閲覧を頻繁に行う事になります。
最初はプロパティウインドウについて説明してしまうと考える事が多くなってしまいます。
もう少し勉強が進んでから検討することにしましょう。
ローカルウィンドウ
プロパティウインドウ同様に最初は使わないので説明を省略します。
ローカルウインドウについては今シリーズにおいて後半で使用する事になります。
もう少し勉強が進んでから説明した方が理解が進むと思っていますのでこのまま進めます。
イミディエイトウィンドウ
イミディエイトウインドウはシリーズ通して紹介しません。また別の機会で紹介させていただきます。
まとめ
今回はVBEについて勉強しました。
- 開発タブの出し方
- VBEの表示 Alt+F11
- 標準モジュールにコードを書く
Enjoy Excel
色々な機能があるVBEですが最初はプロジェクトエクスプローラーとコードウインドウの2つしか使いません。
序盤はこの2つがVBEのキーとなる要素です。次の記事ではコードウインドウの勉強に進みましょう。
参考:関連記事
本シリーズはこちらの記事とも連携しています。