文字色の設定

広告

次は文字色の設定です。使用できる色は既に用意されており全部で57種類の色が用意されています。それぞれの色には0から56のインデックス番号が対応しており、Fontオブジェクトの「ColorIndex」プロパティにインデックス番号を指定することで文字色を指定できます。

Dim font1 As Font

Set font1 = Range("A1").Font
font1.ColorIndex = 10

Fontオブジェクトを別途取り出さずに、次のようにまとめて記述しても構いません。

Range("A1").Font.ColorIndex = 10

ここで指定できる57種類の色は、Excelで「セルの書式設定」で設定可能な色と同じです。

文字色の設定

※どの色がどのインデックス番号かは、このページの最後を参照して下さい。

サンプルプログラム

では簡単なサンプルで試してみましょう。

testcellfont5.bas

Sub テスト()
    
    Range("A2:B4").Value = "ABC"

    Range("A2").Font.ColorIndex = 3
    Range("B3").Font.ColorIndex = 26
    Range("B4").Font.ColorIndex = 47

End Sub

上記マクロを実行すると次のようになります。

文字色の設定

また、色のインデックス番号と実際の色の一覧を確認しておきます。セルの背景色にも同じように色をインデックス番号で指定できますので、色々な色をセルの背景に設定してみましょう。(背景色の設定については別のページで詳しく見ていきます)。

testcellfont6.bas

Sub テスト()
    
    Dim i As Integer, j As Integer
    
    For i = 1 To 8
        For j = 1 To 7
            Cells(i, j).Interior.ColorIndex = (i - 1) * 7 + j
            Cells(i, j).Value = (i - 1) * 7 + j
        Next j
    Next i

End Sub

上記マクロを実行すると次のようになります。

文字色の設定

※インデックス番号「0」は色無しのとなりますが、文字色の場合は色無しは設定できません。

Excel VBA入門の他の記事を見てみる

( Written by Tatsuo Ikura )