【ExcelVBA】HelloWorldプログラム
HelloWorldプログラム
それでは、簡単なプログラムを作成して実行してみましょう。
ここで作成するプログラムは「HelloWorldプログラム」と言います。これは「HelloWorld」と喋らせる(=表示させる)プログラムで、学習を始めるときにまず最初に作ることが多いものです。
このプログラムは非常に簡単なものですが、VBAの開発環境・実行環境が構築できたか、どのように開発していくのか、どのように実行するのか、デバッグ(プログラムの不具合・バグを探すこと)をどのようにこなうのかなど、プログラミングを行っていく上で必須となるテクニックを確認することができます。
1.Excelを起動し、空白のブックを選択する
[004-【ExcelVBA】HelloWorldプログラム-001.png]
2.VBE(Visual Basic Editor)を起動する
「開発」タブの「Visual Basic」をクリックします。
3.標準モジュールを追加する
メニューから「挿入」→「標準モジュール」をクリックします。
4.プログラムを記述する
追加したモジュール「Module1」をダブルクリックで開き、以下のプログラムを入力します。
Sub HelloWorld() Debug.Print "Hello World!!!" End Sub
以下の点に注意してください。
・大文字と小文字
・半角と全角(上記のプログラムでは、すべて半角で記述されています。特にスペースは間違えないように)
・3行目の左余白は「Tab」キーを使って入力する(スペースキーは使わない)
・各種記号(記号を間違えてもプログラムはうごきません)
※VBEを使うと上記の注意点はある程度自動的に補正されます。
1行目、5行目に関しては今後詳しく紹介していきます。3行目は第2回目の「VBAの基本構文」で出てきた「オブジェクト式(メソッド)」です。このケースでは「”HelloWorld!!!”」という引数を指定しています。引数名は指定していません。
この「Debug.Print」は引数で指定した値をイミディエイトウィンドウに出力するという機能をもっています。他に便利な使い方として、カンマ区切りで2つ以上の引数を指定することもできます。デバッグするときにとても便利な機能ですのでぜひ覚えておきましょう。
Sub HelloWorld() Debug.Print "Hello World!!!", "hogehoge", "piyopiyo" End Sub
入力ミスをしてしまったときにはエラーが発生することがあります。
たとえば、3行目の「Debug.Print」の部分のピリオド(.)をカンマ(,)にしてしまった場合は以下のようなエラーが表示されます。
[004-【ExcelVBA】HelloWorldプログラム-004.png]
エラーメッセージにも表示されていますが、このようなエラーのことをコンパイルエラーと言います。コンパイルエラーは文法的な間違いにより発生するエラーのことで、このエラーが発生している間はプログラムを実行することはできません。
コンパイルエラーが発生しているときは、無視するのではなく逐一修正していくようにしましょう。
5.ファイルを保存する
ショートカットキーの「Ctrl+S」か画面左上の上書き保存アイコンをクリックして、Excelを保存します。
このときに、必ず「ファイルの種類」を「Excel マクロ有効ブック (*.xlsm)」に変更してください。
プログラムを作成するときにはこの上書き保存を非常によく行うため、ショートカットキーを覚えておくことをお勧めします。
キーボードを見なくてもショートカットキーを押せるようになっておくと、プログラミングが捗ります。
6.プログラムを実行する
画面上の「ユーザーフォームの実行」アイコンをクリックします。実行結果はイミディエイトウィンドウに「Hello World!!!」が表示されれば成功です。
イミディエイトウィンドウが表示されていない場合は、「表示」メニューの「イミディエイトウィンドウ」をクリックします。
[004-【ExcelVBA】HelloWorldプログラム-007.png]小さなフローティングウィンドウで表示されてしまうときには、イミディエイトウィンドウをドラッグするとVBEのウィンドウにドッキングさせることができます。
[004-【ExcelVBA】HelloWorldプログラム-008.png]以上でHelloWorldプログラムの作成と実行は完了です。
ダブルクォーテーションの中「Hello World!!!」を変更すると表示される文字も変ります。
実際に変更して確認してみましょう。