VBA⑤|構文のルール・その1|基本的な3要素「オブジェクト・プロパティ・メソッド」を理解しよう!
VBAって難しそう…と思っていませんか?
「Excelのマクロを使ってみたいけど、プログラムの書き方がわからない…」
「何から覚えたらいいの?」
そんな初心者の方にまず知ってほしいのが、VBA構文の“3つの基本要素”です。
たった3つの考え方を知るだけで、VBAのコードは驚くほど読みやすくなります!
◆VBAの基本は「オブジェクト・プロパティ・メソッド」
Excel VBAでは、すべての処理が以下の3要素を軸に構成されています。
オブジェクト:操作の対象となるもの
セル、シートなど
Range("A1")、Sheets("Sheet1")プロパティ:オブジェクトの属性・状態
値、色、フォントなど
.Value、.Font.Boldメソッド:オブジェクトに対する命令
選択、コピー、削除など
.Select、.Copy、.Clear
◆実例で見てみよう
例1:セルA1に「こんにちは」と入力する
Range("A1").Value = "こんにちは"オブジェクト:Range("A1") → セルA1
プロパティ:.Value → セルの中身
操作:値を「こんにちは」に設定(代入)
例2:シート「売上」を選択する
Sheets("売上").Selectオブジェクト:Sheets("売上") → 「売上」シート
メソッド:.Select → 選択する動作
このように、VBAの文は「何に対して」「どんな操作をするか」を読み取るだけで理解できるようになります。
◆書き方の基本パターン
オブジェクト.プロパティ = 値
オブジェクト.メソッドプロパティ設定の例:
Range("A1").Font.Bold = True ' A1の文字を太字にする
Range("B2").Interior.Color = RGB(255, 255, 0) ' B2セルを黄色にメソッド実行の例:
Range("A1:A5").ClearContents ' A1~A5のデータを消す
Range("A1").Copy Range("B1") ' A1の値をB1にコピーつまり・・
プロパティは、状態や値(見た目・内容など)
使い方は、値を設定 or 取得する
メソッドは、動作・命令(実際に動く処理)
使い方は、処理を呼び出す
◆参考:よく使うオブジェクト一覧(初心者向け)
マクロを組んだりするときに比較的多く使う、オブジェクトとその使用例です。
Range(セル・セル範囲):Range("A1")
Cells(行番号・列番号で指定):Cells(1, 1)
Sheets(シート):Sheets("Sheet1")
ActiveSheet(現在表示されているシート):ActiveSheet.Range()
ThisWorkbook(現在のブック):ThisWorkbook.Sheets()
◆応用編:Withステートメントを使うとスッキリ!
同じオブジェクトに複数のプロパティ設定をするなら、With ~ End Withを使うとコードがスッキリします。
With Range("A1")
.Font.Bold = True
.Font.Size = 14
.Interior.Color = RGB(200, 200, 255)
End Withこう書くことで、プロパティの前にいちいち対象オブジェクトを書く必要がなくなります。
◆まとめ:3要素を意識すればVBAは怖くない!
VBAのコードは 「オブジェクト」.「プロパティ」や「メソッド」 の形が基本
何を操作したいのか(オブジェクト)
どう見せたい or どう動かしたいのか(プロパティ / メソッド)
この3つを意識するだけで、マクロ記録のコードも理解しやすくなり、自分で書けるようになります。
次回は、変数とデータ型について書きたいと思いますので、下記リンクより進んでください。
この記事が参考になったら、「スキ」やフォローしてもらえますと嬉しいです。
いいなと思ったら応援しよう!
応援ありがとうございます!