Excel VBAを利用すると、Excelファイルを編集する定型的な業務を自動化することができ、他の言語の開発現場でも、Excel VBAを利用したツールを利用することが多い。
今回は、Excel VBAを使って開発が行えるまでの準備を行ってみたので、その手順を共有する。
なお、Excel VBAについては、以下のサイトを参照のこと。
http://e-words.jp/w/VBA.html
前提条件
Windows端末上に、下記バージョンのMicrosoft Excelがインストール済であること。
なお、上記Excelのバージョンを確認する手順については、以下のサイトを参照のこと。
https://office-hack.com/excel/version/
やってみたこと
開発タブの表示
Excelで開発タブを表示することで、Excel VBAのプログラムを作成・編集するための画面(Visual Basic Editor)を表示することができる。その手順は以下の通り。
4) 以下のように、Excelのオプション画面が開くので、「リボンのユーザー設定」を選択し、「開発」にチェックを入れ、「OK」ボタンを押下
5) 以下のように「開発」タブが表示され、「開発」タブを選択すると左上に「Visual Basic」が表示されることが確認できる
ExcelファイルをExcel マクロ有効ブックとして保存
Excel VBAのソースコードを記載したファイルを保存するには、「Excel マクロ有効ブック(*.xlsm)」 として保存する必要がある。その手順は以下の通り。
4) 保存先を指定し、ファイルの種類に「Excel マクロ有効ブック(*.xlsm)」 を指定し、「保存」ボタンを押下
5) 以下のように、指定したファイル名で、Excel マクロ有効ブックとしてファイルが保存されたことが確認できる
VBAプログラムの作成と実行
VBAプログラムを作成・実行する手順は、以下の通り。なお、今回はVBAの関数として、戻り値を返さないSubプロシージャを利用するものとする。
1) 保存した「SampleVBA.xlsm」を開き、「開発」タブから「Visual Basic」を選択
2) 以下のように、VBAプログラムを編集する画面(Visual Basic Editor)が表示されるので、「挿入」メニューから「標準モジュール」を選択
3) 追加された標準モジュール「Module1」に、”Hello World!!”というダイアログを表示する以下の関数を記載し、「上書き保存」ボタンを押下
1 2 3 | Sub vbaTest() MsgBox "Hello World!!" End Sub |
また、作成したVBAプログラムを実行する手順は、以下の通り。
4) 保存した「SampleVBA.xlsm」を開き、「開発」タブから「マクロ」を選択
5) 先ほど保存したVBAプログラムのSubプロシージャ(vbaTest)が一覧に表示されているので、この状態で「実行」ボタンを押下
6) 以下のように、「Hello World!!」を出力したダイアログが表示されることが確認できる。ダイアログを閉じるには「OK」ボタンを押下
なお、保存した「SampleVBA.xlsm」を開いた際に、以下のようにセキュリティの警告画面が表示された場合は、「コンテンツの有効化」ボタンを押下する。
要点まとめ
- Excel VBAを利用するには、開発タブを表示し、開発タブ内の「Visual Basic Editor」を利用してソースコードを編集する。また、編集したソースコードの実行は、開発タブ内の「マクロ」を利用する。
- Excel VBAのファイルは、Excel マクロ有効ブックとして保存する。