初心者向けに、「セル操作」「シート操作」両者の違いと代表的な使い方を並べてみます。
セル操作(Rangeオブジェクト)
セルやセル範囲を対象にする操作。
「中身や見た目をいじる」のが中心です。
よく使う操作
- 値を入れる/取り出す →
.Value - 数式を入れる →
.Formula - 背景色を変える →
.Interior.Color - 文字の見た目を変える →
.Font
例
Sub CellOperation()
' A1に文字を入力
Range("A1").Value = "こんにちは"
' B1に数値を入力
Range("B1").Value = 100
' C1に合計式を入れる
Range("C1").Formula = "=SUM(A1:B1)"
' D1を黄色に塗る
Range("D1").Interior.Color = RGB(255, 255, 0)
' E1を赤字・太字に
With Range("E1").Font
.Color = RGB(255, 0, 0)
.Bold = True
End With
End Sub
VBシート操作(Worksheetオブジェクト)
シートそのものを対象にする操作。
「シートを増やす・消す・名前を変える」などが中心です。
よく使う操作
- 新しいシートを追加 →
.Add - シートを削除 →
.Delete - シート名を変更 →
.Name - シートをコピー/移動 →
.Copy/.Move
例
Sub SheetOperation()
' 新しいシートを追加
Worksheets.Add
' 1枚目のシートの名前を変更
Worksheets(1).Name = "売上"
' 「売上」シートをコピーして最後に追加
Worksheets("売上").Copy After:=Worksheets(Worksheets.Count)
' 「売上」シートを削除(確認メッセージなし)
Application.DisplayAlerts = False
Worksheets("売上").Delete
Application.DisplayAlerts = True
End Sub
VB両者を組み合わせる
実務では「どのシートの、どのセルを操作するか」を指定するのが基本です。
例
Sub CombineExample()
' シート「集計」のA1に今日の日付を入れる
Worksheets("集計").Range("A1").Value = Date
End Sub
VBまとめ
- セル操作 → セルの中身や書式をいじる(Rangeオブジェクト)
- シート操作 → シートそのものを増やす・消す・名前を変える(Worksheetオブジェクト)
- 実際は「シートを指定して、その中のセルを操作する」流れが基本
