変数、定数

変数はルーチンの実行中に値を保持したり、操作するために使用します。変数を利用すればマクロを効率的に記述でき、ルーチンの実行速度を上げることができます。変数にはさまざまな型があり、データの種類によって使い分けられます。そこで、変数を利用する利点を説明してみます。

変数を使用しない場合、セルの値を他の3つのワークシートにコピーするには以下のようになります。

Sub Sample1()
  Worksheets("Sheet2").Range("A1").Value = Worksheets("Sheet1").Range("A1").Value
  Worksheets("Sheet3").Range("A1").Value = Worksheets("Sheet1").Range("A1").Value
  Worksheets("Sheet4").Range("A1").Value = Worksheets("Sheet1").Range("A1").Value
End Sub

変数を使用すると、

Sub Sample2()
  Dim Num1 As Variant
  Num1 = Worksheets("Sheet1").Range("A1").Value
  Worksheets("Sheet2").Range("A1").Value = Num1
  Worksheets("Sheet3").Range("A1").Value = Num1
  Worksheets("Sheet4").Range("A1").Value = Num1
End Sub

このように、繰り返し利用する値は一旦変数に格納してから使うと便利になります。

値を変えることができるのが変数ですが、定数には変化しない値を格納します。その名前のとおり「一定の値」です。定数の宣言は頭に「Const」をつけ、値の割り当ても行います。

Sub 右フッターに電話番号を設定()
  Const TelNumber As String = "012-345-6789"
  Worksheets("Sheet1").PageSetup.RightFooter = TelNumber
End Sub