【VBA】文字の色と背景色を変更する方法


今回は、文字の色と背景色を変更する方法です。

サンプルデータは以下の図をご覧ください。

↓実演動画
https://youtu.be/HoxrzK00ufA

今回の条件は、

・値が40以上→背景を青
・値が30以上→文字を青
・値が20以上→文字を黄色
・値が10以上→背景を緑

としました。

ソースコードは下記の通りです。


Sub 文字の色と背景色の変更()

    Dim i As Long
    For i = 2 To Cells(Rows.Count, 1).End(xlUp).Row

        Select Case Cells(i, 1)

            Case Is >= 40
                Cells(i, 1).Interior.Color = vbBlue
            Case Is >= 30
                Cells(i, 1).Font.Color = vbBlue
            Case Is >= 20
                Cells(i, 1).Font.Color = vbYellow
            Case Is >= 10
                Cells(i, 1).Interior.Color = vbGreen

        End Select

    Next

End Sub


詳細を説明します。

Dim i As Long

行数を格納するための変数を用意します。

For i = 2 To Cells(Rows.Count, 1).End(xlUp).Row

行数分、ループ処理します。

Select Case Cells(i, 1)

       Case Is >= 40
            Cells(i, 1).Interior.Color = vbBlue
       Case Is >= 30
            Cells(i, 1).Font.Color = vbBlue
       Case Is >= 20
            Cells(i, 1).Font.Color = vbYellow
       Case Is >= 10
            Cells(i, 1).Interior.Color = vbGreen

End Select

Case文で判定し、背景色、文字色の変更をすることが出来ます。

Case文は、以下のサイトが参考になるかと思います。
https://valmore.work/excel-vba-case/

「Interior.Color」で背景色、「Font.Color」で文字色の変更ができます。

色については、以下のサイトが参考になると思います。
https://katakago.sakura.ne.jp/pgm/vba/pgm01/vbcolor.html

以上が、文字の色と背景色を変更する方法でした。