VBAの基本3要素とは|オブジェクト・プロパティ・メソッドの役割と使い方

VBAのコードを読み書きするうえで、最初に理解しておくべき概念が3つあります。オブジェクト・プロパティ・メソッドです。この3つを理解することで、VBAのコードの構造が見えてきます。

この記事では、3つの要素をそれぞれ具体例とともに解説します。

オブジェクト・プロパティ・メソッドとは何か?

VBAのコードは「何を(オブジェクト)どんな状態に(プロパティ)どう動かすか(メソッド)」という構造で成り立っています。

' 例:シート「売上」のA1セルの背景色を赤にする
Worksheets("売上").Cells(1, 1).Interior.Color = RGB(255, 0, 0)

このコードを分解すると次のようになります。

要素内容
オブジェクト操作の対象(「何を」)セル・シート・ブック
プロパティオブジェクトの属性・状態(「どんな状態に」)背景色・値・名前・太さ
メソッドオブジェクトへの動作(「どう動かすか」)コピー・削除・保存・印刷

オブジェクトとは?

オブジェクトは「操作の対象」です。VBAで最もよく使うオブジェクトは次の3つです。

  • セルCellsRange):値や書式を操作する
  • シートWorksheets):シートの追加・削除・名前変更などを行う
  • ブックWorkbooks):ファイルを開く・閉じる・保存するなどを行う

プロパティとは?

プロパティはオブジェクトの属性や状態を表します。.(ドット)でつないでオブジェクトの後ろに書きます。

' プロパティの例
Cells(1, 1).Value = "売上"          ' セルの値
Cells(1, 1).Interior.Color = RGB(255, 0, 0)  ' セルの背景色
Worksheets("Sheet1").Name = "売上"  ' シートの名前

プロパティは「状態の読み取り」と「状態の設定」の両方に使えます。

メソッドとは?

メソッドはオブジェクトに対する「動作」です。コピー・削除・保存・印刷などが代表例です。

' メソッドの例
Cells(1, 1).Copy                 ' セルをコピー
Rows(3).Delete                   ' 3行目を削除
ActiveWorkbook.Save              ' ブックを保存
Worksheets("Sheet1").PrintOut    ' シートを印刷

プロパティとの見分け方の目安として、= で値を設定するものがプロパティ、動作を表すものがメソッドです。

まとめ

  • オブジェクト:操作の対象。セル・シート・ブックが基本の3つ
  • プロパティ:オブジェクトの属性・状態。値・色・名前など = で設定する
  • メソッド:オブジェクトへの動作。コピー・削除・保存など
  • マクロの記録でコード化されるのはこの3つだけ(条件分岐・繰り返しは自分で書く)
  • 3つの構造を理解するとVBAのコードが読み解きやすくなる

よくある質問

プロパティとメソッドの見分け方はありますか?

プロパティは オブジェクト.プロパティ = 値 のように = で値を設定するものです。メソッドは オブジェクト.メソッド または オブジェクト.メソッド 引数 のように動作を指示するものです。ただし両方の性質を持つ場合もあります。

オブジェクト以外にVBAの要素はありますか?

あります。VBAを構成する要素は「オブジェクト・プロパティ・メソッド・関数・ステートメント」の5つです。関数(MsgBox・Formatなど)とステートメント(If・For・Dimなど)はオブジェクトなしでも使えます。

VBEのオートコンプリートを活用すると何が便利ですか?

オブジェクトの後ろに .(ドット)を入力すると、使えるプロパティとメソッドの一覧が表示されます。これを活用するとスペルミスを防ぎながら効率よくコードが書けます。

ブック・シート・セルの順に指定しないといけませんか?

省略できる部分は省略できますが、省略するとアクティブなブック・シートが対象になります。意図した場所に処理するために、少なくともシートは明示することを推奨します。

オブジェクトはセル・シート・ブック以外にもありますか?

あります。グラフ(Chart)・図形(Shape)・ピボットテーブル(PivotTable)・名前付き範囲(Name)なども代表的なオブジェクトです。基本の3つを習得したら徐々に広げていきましょう。


動画で学びたい方へ

「記事を読んでも、実際に自分で書けるか不安…」という方には、動画で基礎からじっくり学べる講座がおすすめです。

VBAが初めての方を前提に、つまずきやすいポイントを先回りして解説しています。サンプル動画は無料でご覧いただけます。

動画で学ぶExcelマクロ|JIMOVEオンラインスクール

コメントする

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

上部へスクロール