VBA講座01 1 + 1 = 2 を計算させるプログラム
(Sub は Subroutine の略です)

「プログラムなんて1行も書いたことないよ!」
という人のための VBA 超入門講座の初回です。
 この講座では、とにかく簡単なプログラムを書いてみて、それを少しずつ変更していくというスタイルで進めていきます。オブジェクトやプロパティなどの用語はその時々で少しずつ解説します。記事を読み進めていくうちに
「なーんだ。プログラミングって案外簡単なんだね」
と思ってもらえると嬉しいです。作って、触って、動かして、プログラミングを目いっぱい楽しんでください。
 

最初のプログラムです!

 最初のプログラムと書くときは「 Hello World 」というメッセージを表示するのがプログラム界の慣例(?)となっていますけど、はっきり言って意味不明で食傷気味ですし、ここは数学サイトなので、やはり数学らしく「 1 + 1 」を計算させるマクロを書いてみることにします。
 

1 + 1 を計算します

 それでは記念すべき(?)最初のマクロです。
 次のマクロをコピーしてモジュールに貼りつけてください。

 Sub 足し算()
  Dim x As Integer
  x = 1 + 1
  MsgBox x
 End Sub

 このマクロを実行するとメッセージボックスが現れて「 2 」という数字が表示されるはずです。以下の記事で内容を説明します。

Sub と End Sub で括りましょう

 たった5行の簡単なマクロですけど、大事な要素がたくさん詰まっています。1つ1つ丁寧に見ていきましょう。最初に覚えておかなくてはならないのが1行目の

Sub 足し算()

という記述と

End Sub

という記述です。1行目を入れると最終行は自動的に記述されます。冒頭 Sub というのは Subroutine(サブルーチン)のことです。サブルーチンの「サブ」はメインのマクロの部品として働くことからそう呼ばれています。

 今は「 1 + 1 」を計算する立派な「主役」ですが、必要なときには他のプログラムで呼び出して使うこともできます。なので普通のマクロには、この Sub というコードが必ずついています。

 Sub のあとに続く「足し算」がプログラム(マクロ)の名前です。
 さらに () がついていますが、これはサブルーチンとしてはたらくときの引数を入れておくためのものです。メインで動かす場合は使用しないので、今はあまり気にせずに、マクロの名前のあとに () を付けるという規則だけ覚えておいてください。この Sub と End Sub で括ったところがひとまとまりのプログラム(マクロ)として認識されます。

変数を宣言します

 2行目に書かれている

Dim x As Integer

は変数を宣言しています。Dim とは Dimension の頭文字で、は「変数の型」を宣言するステートメントです。Integer は「整数」です。なので、このコードには

x を整数と宣言します

ということが書かれているのです。このように宣言することで、整数を入れる箱 x を用意したことになります。

変数 x に値を入れます

x = 1 + 1

は「 x に 1 と 1 を加えたものを入れる」という記述です。

メッセージを表示します

MsgBox x

という記述では MsgBox関数を利用して、 x の値をダイアログボックスに表示させます。 VBA にはこのようにちょっと複雑な処理を行ってくれる VBA関数がいくつも用意されています。関数を全部覚える必要はまったくないので、その時々に応じてヘルプなどで探して使うようにします。

 今回はここまでにします。次回の記事では
「もしも x に整数以外の値を入れたらどうなるのかな」
ということを試しながら「変数の型」の意味を考えてみます。

 ≫ 次の講座に進みます。
 ≫ マクロ講座のトップページに戻ります。

スポンサーリンク
末尾広告
末尾広告

コメントをどうぞ

メールアドレスが公開されることはありません。