見出し画像

Excelで条件に基づくセルの色分け VBA

Lの値が特定の文字列だった場合は
その、行の色を変えるという、簡単なコードですが
作業する際に、結構便利です。

Excelで使用します。

下記のコードは

L列が「スキャン」だった場合は、薄黄色

L列が「WEB」だった場合は、薄緑色

L列が「データ」だった場合は、薄青色

にするように、しております。

弊社では、帳簿用の銀行データを、一旦Accessで、インボイス番号や
税率、領収書データの取り込み方法、返金先等を、自動出力後に
Excelでエクスポートしておりますが
「領収書データの取り込み方法」が、文字のみなので
実際作業する際に、わかりやすいように色をつけました。

Sub セルの色を設定()
    Dim ws As Worksheet
    Dim rng As Range
    Dim row As Range
    Dim lCell As Range
    Dim eCell As Range
    
    ' 現在のアクティブシートを設定
    Set ws = ActiveSheet
    
    ' L列の範囲を設定(ここでは、データが存在する範囲を仮定しています)
    Set rng = ws.Range("L1:L" & ws.Cells(ws.Rows.Count, "L").End(xlUp).Row)
    
    ' 各行に対してループ
    For Each lCell In rng
        Set row = lCell.EntireRow
        Set eCell = row.Cells(1, "E") ' E列のセル
        
        ' L列の値に基づいて色を設定
        Select Case lCell.Value
            Case "スキャン"
                row.Interior.Color = RGB(255, 255, 204) ' 薄黄色
              '  eCell.Interior.Color = RGB(255, 182, 193) ' 薄ピンク
                
            Case "WEB"
                row.Interior.Color = RGB(204, 255, 204) ' 薄緑色
              '  eCell.Interior.Color = RGB(255, 182, 193) ' 薄ピンク
                
            Case "データ"
                row.Interior.Color = RGB(204, 229, 255) ' 薄青色
             '   eCell.Interior.Color = RGB(255, 182, 193) ' 薄ピンク
        End Select
    Next lCell
End Sub

この記事が気に入ったらサポートをしてみませんか?