Visual Basic for Applications (VBA)とは、マイクロソフトのオフィススイートであるMicrosoft Officeに搭載されているプログラミング言語である。

基本的な文法はVisual Basicと同じであるが、Microsoft Officeを操作するための拡張が施されている。

Microsoft Office 2003でのVBAの使い方

Microsoft Office 2003でVBAを使うには、メニューから[ツール]-[マクロ]-[Visual Basic Editor]を選択する。

Microsoft Office 2007でのVBAの使い方

デフォルト状態の Microsoft Office 2007 では、VBAでマクロを作成するためのボタンやメニューがありません。VBAを扱えるようにするには設定が必要です。Microsoft Office Excel 2007 を例に設定方法を説明します。

VBAを扱えるように設定するには、まずOfficeボタンをクリックしてメニューを表示させます。

Officeボタン

次に、「Excel のオプション」ボタンをクリックします。

Excelのオプション

「Excel のオプション」ダイアログ・ボックスで「基本設定」をクリックします。「[開発] タブをリボンに表示する」チェック・ボックスをクリックします。「OK」ボタンをクリックして、「Excel のオプション」ダイアログ・ボックスを閉じます。

開発タブ

そうすると、Microsoft Office Excel 2007 に「開発」タブが表示されるようになります。

Microsoft Office Excel 2007 を例に説明しましたが、Microsoft Office Word 2007 でもやり方は同じです。

VBAのプログラムを入力する

「開発」タブをクリックする。リボンの「Visual Basic」をクリックすると、「Microsoft Visubal Basic for Applications」ウィンドウが開く。

ribbon

「Microsoft Visual Basic for Applications」ウィンドウの「挿入」メニューから「標準モジュール」を選択すると、「プロジェクト」に「標準モジュール」が追加され、コードウィンドウが開く。

Insert standard module

module1

コードウィンドウに以下のプログラムコードを入力する。

Sub HelloWorld()
    MsgBox "Hello, world!"
End Sub

ExcelでVBAマクロを実行する

Microsoft Excelの「開発」タブから、リボンの「マクロ」をクリックすると、「マクロ」ダイアログが開く。

module1

「マクロ」ダイアログの「マクロ名」から「HelloWorld」を選択して、「実行」ボタンをクリックする。

module1

VBAマクロが実行されて、メッセージボックスが表示される。

module1

VBAマクロを含むファイルの保存

Excelファイルの種類化「Excelブック(*.xslx)」の場合は、ファイルにマクロを保存することができない。Excelファイルにマクロを含めて保存する場合は、「名前を付けて保存」ダイアログの「ファイルの種類」から「Excelマクロ有効ブック(*.xlsm)」を選択して、「保存」ボタンをクリックする。