第2回 VBA学習 〜VBE編〜

プログラミング

それでは第2回VBA学習を始めていきます。

この回ではVBEの使い方からモジュールの追加、マクロ付きブックの保存までを学習します。

この回をしっかり学ぶことで学習を始める前の操作を学ぶことができます。

VBEとは?

VBEとは「Visual Basic Editor」の略で、VBAを書くエディタです。

簡単に言うとExcelVBA専用のプログラミングできるソフトと思ってもらっていいです。

この「VBE」に「VBA」を書くことで、実行出来ます。

「マクロの記録」の内容も、このVBEに記録されます。

VBEの起動方法

それではExcelを立ち上げてください。

Excelのリボン(上部)に[開発]タブがある方はそちらをクリックします。

無い方は[ファイル]をクリック

[オプション]をクリック

[リボンのユーザー設定]をクリック

画面左側の[メインタブ]を選択後、[開発]にチェックを入れます。

これで[開発]タブが表示されたと思います。

リボンにある[開発]タブをクリック

左端にある[Visual Basic]ボタンをクリック

するとVBEが起動します。

ソフトウェア名は[Microsoft Visual Basic for Applications]です。

こちらの画面が表示されていれば起動完了です!

Excelの環境によっては画像のようなウインドウが表示されていない場合もあります。

表示されていない場合は次のウインドウの表示方法を確認してください。

ウインドウの表示方法

メニューバーの[表示]から表示したいものを選択してください。

先ほどの画面を表示する場合は黄色の箇所の「プロジェクトエクスプローラー」と「プロパティウインドウ」を選択してください。

色分けしている内容を簡単に説明します。

内容
コードを入力するエリア
コードの詳細を表示するエリア
プロジェクトとその詳細を表示するエリア
便利な機能を表示するエリア

それぞれ試しに表示させてみましょう。

表示されていた場合は、非表示になるだけですので再度選択すれば表示されますので安心してやってみましょう。

VBEの各部名称

僕が主に使用しているVBE画面を共有します。

もし表示されていない場合は[表示]タブにありますのでクリックして表示させてください。

No.名称機能
1メニューバー主機能の集まり
2ツールバー作業を支援する集まり。好みのツールバーを表示できる。
3プロジェクトエクスプローラーマクロを記述する場所の一覧と管理、編集をするエリア
4プロパティウインドウ現在選択されているオブジェクトの設定値の確認と編集をするエリア
5コードウインドウプログラムを編集するエリア
6イミディエイトウインドウ変数の値やプロパティの値を確認するエリア
7ローカルウインドウ現在の変数の値を一覧表示されるエリア

以上となります。

最低限No.1〜5は表示させておきましょう。

No.6、7は学習の過程で必要であれば説明します。

VBEとExcelの便利な切り替えショートカット

ここでは役に立つショートカットの紹介をします。

今後、VBEと Excelを頻繁に切り替えることがあると思います。

マウスで直接切り替えてもいいのですが、ショートカットをできるだけ使用する癖をつけていきましょう。

ショートカットキーは、[Alt]+[F11]です。

覚えておくだけで意外と時間の節約に繋がります。

VBEでプログラムを書く方法

VBEを起動しただけではまだVBAを書くことができません。

プロジェクトエクスプローラーにモジュールと呼ばれるものを追加する必要があります。

先ほど青の「コード」で表示させたのは「sheetモジュール」または「bookモジュール」です。

上記モジュールで入力するのもいいのですが使い方を知る必要がありますので、ここでは標準モジュールで学習していきます。

標準モジュールの表示方法①

[メニューバー]にある[挿入]を選択すると、[プロシージャ]、[ユーザーフォーム]、[標準モジュール]、[クラスモジュール]が表示されるので[標準モジュール]を選択します。

プロジェクトエクスプローラーに「標準モジュール」が追加され[Module1]が追加されています。

このModule1をクリックすると右側にエディタが開きコードが書き込める様になります。

※バージョンによっては自動で表示させる場合もあります。

標準モジュールの表示方法②

プロジェクトエクスプローラーでマウスを[右クリック]し、[挿入]、[標準モジュール]とすることで同様に追加できます。

僕は追加方法②のやり方で追加する人です。

どちらを使ってもいいと思います。覚えやすい方で覚えておきましょう。

モジュールの削除方法

追加したモジュール[Module1]を削除する方法は

[Module1]を選択後、マウスを[右クリック]し[Module1の解放]を選択します。

ポップアップで「削除する前にModule1をエクスポートしますか?」と表示されたら[いいえ]を選択します。

これでModule1が削除されます。

エクスポートについての補足

作成したモジュールを単体で保存できる仕組みです。

この仕組みを利用することで別のExcelファイルにも同様のモジュールを作成することなく読み込ませて利用できます。

[.bas]形式で保存され中身を確認すると同じものがメモ帳で確認できます。

例えばModule1をエクスポートした場合、[Module1.bas]で保存されます。

プログラムを書く前の設定「Option Explicit」

最後に1つ設定しこの第2回は終わりになります。

僕のVBE画面に表示してあったのを気づいた方はいるかもしれません。

モジュールを追加した際に表示されている[Option Explicit]を設定しましょう。

変数を宣言しないと使えないようにするためのものです。

設定理由はまた別の記事で解説します。今回は設定方法のみ紹介します。

メニューバーの[ツール]の[オプション]をクリック。

編集タブの[変数宣言を強制する]にチェックを入れて[OK]ボタンをクリックして完了です。

これで設定は完了となります。

Excel拡張子の意味(.xlsx .xlsm .xls)

VBAを記載したブックは通常の保存方法では実行できなくなります。

Excelを普段使用している人は、保存するときの拡張子を確認してください。

特に設定をしない場合は.xlsx形式となっているはずです。

※少し前のExcelのバージョンでは.xls形式の場合もあります。こちらはマクロも有効です。

.xlsx拡張子ではマクロは実行できないようになっているので、必ず.xlsm形式で保存してください。

保存する際、(マクロ有効ブック)とも明記されています。

拡張子のそれぞれの意味を簡単に表でまとめたので参考にしてください。

拡張子意味
.xlsxマクロなしブック
.xlsmマクロ有効ブック
.xls2003辺りまでのブック

マクロ付きで保存する手順

拡張子を理解できたと思いますので、保存する手順を説明します。

1 [ファイル]タブの[名前を付けて保存]をクリック。

2 ファイルの保存場所を指定。

3 [ファイルの種類]一覧から[Excel マクロ有効ブック (. xlsm)]を選択。

4 ファイル名を指定して[保存]ボタンをクリック。

これでマクロ有効ブックの保存ができます。

拡張子を確認し.xlsmであれば作業完了です。

まとめ

以上でVBEの基本的な操作と設定の学習を終わりにします。

モジュールの表示から削除まで出来るようになれば後はプログラムを沢山書いていくだけです!

次回からはプログラムを実際に書いてみましょう。