Excel VBAのColorIndexコードと色との関係を調べた
WindowsXPのExcel2003のVBAで、セルの文字の色を変えたいため、[新しいマクロの記録]を行い、「赤は 3」と云うことが解った。
Range("A1").Select
Selection.Font.ColorIndex = 3他の色は? 一覧表みたいなのは無いの?
Anser
色々なサイトに載っていたが、Office TANAKA - Excel VBA講座:セルの操作[文字色の設定] が簡単で解りやすいので引用させていただいた。
上の色の並びは、[ツール]メニュー ⇒[オプション]⇒[色]タブと同じです。上記サイトには、気になることも書いてあった。
このように、文字色の変更をマクロ記録すると、Excelのバージョンによって、次のプロパティが記録されます。
そこで同じサイトに載っているVBAコード参考に後述を作り、実行してみたので参考にしてほしい。
- 例えば、ColorIndex の 9 と 30 が、同じ色コードになっている。
Sub カラーインデックスコードと色()
Dim i As Long, r As Long
Dim strAns As String
For i = 1 To 56
r = i + 1
Cells(r, 1) = i
Cells(r, 2).Interior.ColorIndex = i
Cells(r, 3) = ActiveWorkbook.Colors(i)
strAns = Right("000000" & Hex(ActiveWorkbook.Colors(i)), 6)
Cells(r, 4) = "'" & Right(strAns, 2) & Mid(strAns, 3, 2) & Left(strAns, 2)
'
Cells(r, 1).Select
With Selection.Font
.ColorIndex = i
.Name = "Century Gothic"
.Bold = True
End With
Next
End Sub


