ITサポーターTsuchida

VBA Basic2

第2章 VBAに入る前に

Excel2007以降では標準画面では[マクロ]タブがありません。[マクロ]タブを表示したい場合は、準備作業が必要です。

●[ファイル]タブ-[オプション]-[リボンのユーザー設定]から[開発]にチェックを入れる

ExcelOption

Excelオプションの設定

Excelのリボンに開発タブが追加されたことを確認します。

ただし、[マクロ]タブが表示されていなくても、VBAを作成することは可能です。

VBE画面の表示のショートカットキー:[Alt]キー+[F11]キー

マクロの実行のショートカットキー:[Alt]キー+[F8]キー

なお、[開発]タブ-[マクロの記録]ボタンをクリックすると、以降の操作が記録終了するまで記録されます。 記録された操作は、VBAで記述されます。

どのようにVBA記録されているかは、[開発]タブ-[マクロ]ボタンで[記録されたマクロ名](記録時に指定しないとMacro1)を選択して、[編集]ボタンをクリックします。

記録されたマクロは、[標準モジュール]-[Module1]に記録されています。ExcelのVBAはユーザフォーム以外は必ず標準モジュールに作成するようにしてください。
マクロ記録をしないで自分でVBAを作成する場合は、[挿入]-[標準モジュール]を選択して[Module1]に作成してからVBAを作成します。

ExcelVBAのソース

マクロの記録で記述されたVBA

プロシージャとは

プロシージャとは、VBAの一連の処理を手順をひとまとめにしたもの。マクロの処理単位として扱われます。

プロシージャには、SubプロシージャとFunctionプロシージャがあり、一般的にSubプロシージャを使います。

●Subプロシージャは処理をお願いして所定の処理を行う

●Functionプロシージャは、もらった引数を処理に従って値を返す

FunctionプロシージャはExcelの関数と似た考え方です。消費税の計算のように、金額・税率・税区分・端数処理という引数を受け取って、消費税額を計算するようなときはFunctionプロシージャを使います。

Subで始まったプロシージャはEnd Subで終了させます。Functionで始まったプロシージャはEnd Functionで終了させます。宣言したものは、必ず終わりも宣言します。

VBAに限らず、プログラムではここから始まりますと宣言したら、必ずここで終わりますと宣言しなければなりません。終わる宣言をしないと痛い目にあいます。