VBAの基本構文
VBAの構文は大きく分けると次の3つになる。
- オブジェクト式
- ステートメント
- 関数
このうち、オブジェクト式は、次の2つに分類される。
- 対象.様子 = 値
- 対象.命令.オプション = 値
■用語説明
オブジェクト:マクロの操作される対象のこと。
プロパティ:操作対象が持つ様子や状態のこと。
メソッド:操作対象に何らかのアクションを起こすような命令のこと。
引数:メソッドに指定するオプションのこと。
ステートメント:条件分岐や繰り返しなど、マクロの動作を制御する命令のこと。
関数:引数に与えたデータによって、決まった結果を返す命令のこと。
変数
変数は値を入れる箱のような仕組みである。
変数を使用するときは、使う前に変数を宣言する。
■変数宣言の書式
- Dim 【変数名】 As 【変数の型】
- Private 【変数名】 As 【変数の型】
- Public 【変数名】 As 【変数の型】
Dimを使って宣言した変数は、宣言したプロシージャ内でしか使用できない。
Privateを使って宣言した変数は、宣言したモジュール内のすべてのプロシージャで使用できる。
Publicを使って宣言した変数は、すべてのモジュールで使用できる。
セルの操作
セルの操作はRangeまたはCellsを使う。
Rangeは、セルのアドレスを文字列で指定する。
Range(“A1”) → セルA1
Range(“A1:B3”) → セル範囲A1:B3
Cellsは、セルの行位置と列位置を数値で指定する。
Cells(2,3) → セルC2
セルに入力されている値を表すのがValueプロパティである。
セルに値を入力したり、セルに入力された値を取得するにはValueプロパティを使う。
Range(“A1”).Value = 100
Valueプロパティは省略できる。
Cells(1,2) = “VBA”
セルをコピーするときはRangeオブジェクトのCopyメソッドを使う。
【コピー元】.Copy Destination := 【コピー先】
Range(“A1”).Copy Destination := Range(“B3”)
「Destination :=」は省略できる。
Range(“A1”).Copy Range(“B3”)