Excel VBA | 「セル操作」と「シート操作」

Excel VBA VBA
スポンサーリンク

「セル操作の応用」を掘り下げてみましょう。基礎の .Value.Formula から一歩進んで、複数セルをまとめて扱う・条件付きで操作する・ループで自動処理する といった実践的なテクニックを紹介します。


1. 複数セルをまとめて操作

セル範囲を一度に扱うと効率的です。

Sub FillRange()
    ' A1~A10に1~10を入力
    Dim i As Integer
    For i = 1 To 10
        Range("A" & i).Value = i
    Next i

    ' B1~B10を一括で黄色に
    Range("B1:B10").Interior.Color = RGB(255, 255, 0)
End Sub
VB

👉 ポイント

  • Range("A" & i) のように文字列結合でセルを動的に指定
  • 範囲指定すれば一括で色や書式を設定できる

2. 条件付きでセルを操作

セルの値をチェックして処理を分けることも可能です。

Sub ConditionalFormat()
    Dim i As Integer
    For i = 1 To 10
        If Range("A" & i).Value >= 50 Then
            Range("A" & i).Interior.Color = RGB(144, 238, 144) ' 緑
        Else
            Range("A" & i).Interior.Color = RGB(255, 182, 193) ' ピンク
        End If
    Next i
End Sub
VB

👉 ポイント

  • If ~ Then で条件分岐
  • 値に応じて色分け → 簡易的な「条件付き書式」をVBAで実現

3. ループで表全体を処理

「データが何行あるかわからない」場合に便利です。

Sub LoopUntilEmpty()
    Dim i As Long
    i = 1
    Do While Range("C" & i).Value <> ""
        Range("D" & i).Value = Range("C" & i).Value * 1.1 ' 10%増し
        i = i + 1
    Loop
End Sub
VB

👉 ポイント

  • Do While で「空セルに当たるまで」繰り返す
  • 実務でよくある「データ件数が毎回違う」ケースに対応

4. 数式や集計を自動で入れる

セルに直接数式を入れて、計算を自動化できます。

Sub InsertFormula()
    ' E列に合計を入れる
    Range("E1").Formula = "=SUM(A1:D1)"
    Range("E1").Font.Bold = True
    Range("E1").NumberFormat = "#,##0"
End Sub
VB

👉 ポイント

  • .Formula でExcelの数式をそのまま入力可能
  • .NumberFormat で表示形式を整える

🖌 5. 書式を一括で整える

見やすい表を自動で作るのも応用のひとつ。

Sub FormatTable()
    With Range("A1:D10")
        .Font.Name = "Meiryo"
        .Font.Size = 11
        .Borders.LineStyle = xlContinuous
        .Interior.Color = RGB(240, 248, 255) ' 薄い水色
    End With
End Sub
VB

👉 ポイント

  • With ~ End With で同じ範囲に複数設定
  • 枠線や背景色をまとめて指定

まとめ

セル操作の応用では次の3つがカギです:

  1. ループ(For / Do While)で複数セルを処理
  2. 条件分岐(If)で値に応じた操作
  3. 書式や数式を組み合わせて「見やすく・便利に」

次のステップとしては、

  • 「シート全体を対象にセル操作をする」(全シートに同じ処理)
  • 「ユーザー入力を使ってセルを操作する」(InputBoxでセル範囲を指定)

このあたりをやると一気に実務レベルに近づきます。

VBA
スポンサーリンク
シェアする
@lifehackerをフォローする
スポンサーリンク
タイトルとURLをコピーしました