オブジェクト,プロパティ,メソッド
オブジェクト
VBAで何かの操作を行うとき、その操作の対象となるものをオブジェクトといいます。
ワークシートはWorksheetオブジェクト、セルやセル範囲はRangeオブジェクト、グラフはChartオブジェクトとなります。
プロパティ
属性と呼ばれますが、オブジェクトの動作や外観などを制御するものです。
プロパティの使い方としては、以下の2種類があります。
・プロパティの値の設定
・プロパティの値の取得
プロパティの値を設定することで、オブジェクトの動作や外観を変更できます。以下に例を示します。
ActiveCell.Value="売上金額" | セルの値に「売上金額」を設定する |
Cells.ColumnWidth=20 | セルの幅を20にする |
プロパティの値を取得することで、オブジェクトの状態を調べることができます。以下に例を示します。
Range("A1").Value=Range("A2").Value | セルA2の値を取得してセルA1に設定する |
よく使われるプロパティには以下のようなものがあります。
ActiveCell | アクティブウィンドウのアクティブセル |
ActiveSheet | アクティブブックのアクティブシート |
ActiveWorkbook | アクティブブック |
Column/Row | 対象のセル範囲の左端列、先頭行(Columnは列、Rowは行) |
ColumnWidth | 列の幅 |
RowHeight | 行の高さ |
Height/Width | オブジェクトの高さ、幅 |
Selection | 選択されているオブジェクト |
Value | セルの値など |
メソッド
メソッドは、オブジェクトに実行させる操作のことです。例えば下のようなものです。
Range("A1").Activate | セルA1をアクティブにする |
Rangeオブジェクトのメソッドの例には以下のようなものがあります。
Clear | セルの内容を消去する |
Copy | セルの内容を(クリップボードに)コピーする |
Justify | セル内の文字列をセル範囲内に収まるように割り付ける |
Table | データテーブルを作成する |
メソッドの使い方として、引数を受け取るかどうかによって記述が変わります。
引数を受け取らない場合の構文。
オブジェクト.メソッド
例
Activecell.Justify
引数を受け取る場合の構文。
オブジェクト.メソッド 引数リスト
引数リストで、戻り値を使う場合は引数を括弧で囲みません。戻り値を使う場合は括弧で囲みます。
例
Cells(1,1).Value=10
Cellsメソッドは、行番号と列番号を引数として、該当するRangeオブジェクトを戻り値として返すメソッドです。
いろいろとややこしい事を書いていますが、良く解らなくてもプログラムは書けます。
Excel VBAのチップス一覧へ戻る