Headline About TechLog Download Java VBA Link


June 22, 2007. Friday.

VBA - ExcelでHello world!

それではExcel上で試しにVBAマクロを動かしてみます。分かりやすくて見た目に派手な物としてメッセージボックスの表示をやってみましょう。




Excelツールバーの設定

Excel上でVBAの編集がしやすいように、ツールバーの設定をカスタマイズしてしまいましょう。まずはExcelを起動します。起動したらメニューの[ツール]→[ユーザー設定]と選び、[ツールオプション]タブを選択してください。

ダイアログが表示されたら、[Visual Basic]と[フォーム]にチェックを入れて[閉じる]を押してください。するとツールバー上にフォーム編集用のボタンが表示され、右図のようなVBA操作ボタンのフロートメニューが表示されます。フロートメニューが邪魔な人はツールバー上の好きな場所にドラッグアンドドロップして格納してしまいましょう。




ボタンの作成

それではまず、VBAのプログラムを動かすためのボタンを作成しましょう。まず、ツールバー上のボタンアイコンをクリックします。するとボタン作成状態となるので、Excelシート上を適当にドラッグして矩形を書くと、その大きさのボタンが作成されます。右の図のようにボタンが作成出来たでしょうか?




マクロの登録

ボタンを作成すると、右のようなダイアログが自動的に表示されます。これはボタンをクリックした際などに、行なうマクロ処理を登録するためのダイアログです。

まずマクロの保存先を選びます。これは[作業中のブック]を選択してください。次に呼び出すマクロ関数を決めます。新しく関数を作る場合、一番上のテキスト入力欄に新規作成する関数名を入れます。今は自動で[ボタン1_Click]と表示されていますね。関数には好きな名前をつけることができますが、取り合えず今はサンプルなので[ボタン1_Click]のままにしておきます。あとは[新規作成]を押と[ボタン1_Click]という関数が作成されます。

なお、今回はまだ関数が一つもないので空ですが、既に作成済みの関数がある場合には、中段に関数リストが表示されます。既存関数を呼び出したい場合には、リストから選んでOKを押します。




マクロのコーディング

さて、ではいよいよ実際にマクロのコーディング(プログラムを記述すること)を行います。先ほどの「マクロの登録」を行うと、Microsoft Visual Basicというプログラムを編集するためのウィンドウが表示され、以下のようなプログラムコードが表示されているかと思います。

Sub ボタン1_Click()

End Sub

では、深く考えなくて良いので二行目にちょっと書き加えてみましょう。とりあえず深く考えずに、以下のように書き加えてみて下さい。

Sub ボタン1_Click()
  MsgBox ("なに触ってるのよ!")
End Sub



マクロの実行

それでは最後に作成したマクロを実行してみましょう。Excelの画面に戻って先ほど作成した[ボタン1]をクリックしてみてください。右のようなダイアログが表示されれば成功です。上手く動作しましたか?

先ほど書き加えた、MsgBoxという関数は「続く文字列をメッセージボックスに表示する」という機能を持つ関数です。さっきの例だと、""(ダブルクォート)で囲まれた文字列を表示します。上手く動作した人は""の中の文字列を好きな文字列に書き換えて見てください。サンプルをそのまま実行するのではなく、自分でいろいろ弄ってみることが、プログラム上達の近道です。




今回作ったExcelファイルはここからダウンロード可能です。左クリックだとブラウザ内に開いてしまうことがあるため、右クリックで保存してください。

サンプルソースのダウンロード