この記事では、VBAでExcelのセルに入力された文字に色を設定したり、セルを塗りつぶす方法を実際のVBAコードを含めて紹介します。
文字に色を設定したり、セルを塗りつぶす操作は、Excelでも日常的に行う操作のひとつです。
VBAを学習するうえでも優先度の高い内容となりますので、早速VBAコードを見ていきましょう。
VBA│文字に色を設定する
この章では、セルA1に入力されている文字に色(赤)を設定するVBAコードを紹介します。
基本構文
object. Font.Color = RGB(255, 0, 0)
- object = 文字に色を設定する対象のセル
この例では、A1です - Font = フォントを設定するプロパティ
この例では、Fontの後に記述されているColor(色)です - Color = 色を指定するプロパティ
- RGB() = 赤・緑・青の割合
この例では、赤(255,0,0)です
Rangeプロパティ
Sub Sample()
Range(“A1”).Font.Color = RGB(255, 0, 0)
End Sub
Cellsプロパティ
Sub Sample()
Cells( 1 , 1 ).Font.Color = RGB(255, 0, 0)
End Sub
VBA│セルを塗りつぶす
この章では、セルA1を塗りつぶす(青)VBAコードを紹介します。
基本構文
object. Interior.Color = RGB(0, 0, 255)
- object = 塗りつぶす対象のセル
この例では、A1です - Interior = セルを塗りつぶすプロパティ
- Color = 色を指定するプロパティ
- RGB() = 赤・緑・青の割合
この例では、青(0,0,255)です
Rangeプロパティ
Sub Sample()
Range(“A1”).Interior.Color = RGB(0, 0, 255)
End Sub
Cellsプロパティ
Sub Sample()
Cells( 1 , 1 ).Interior.Color = RGB(255, 0, 0)
End Sub
補足│ColorIndexについて
今回の記事では、文字の色、塗りつぶし共に、Colorプロパティを使って説明しましたが、色を設定するプロパティは他にもあります。
ColorIndexプロパティ
ColorIndexプロパティを使えば、もう少し簡単に色を設定することができます。
Sub Sample()
Range(“A1”).Font.ColorIndex = 3
End Sub
ColorIndexプロパティは、個々のExcelで設定しているパレットの色を数字で指定する方法で、1~56までの56通りの色を数値で設定することができます。
Excelの[ファイルタブ] → [その他] → [オプション] → [保存]でパレットの色を設定することができます。
Colorプロパティとの違い
ColorIndexプロパティは、ユーザーがよく使うお気に入りのような位置付けの「(色)パレット」から指定するのに対して、ColorプロパティはRGBの割合で色を指定します。(どのパソコンでも共通する絶対的な色)
また、Colorプロパティは、RGBそれぞれ「0~255までの256通り」設定することができますので、つまり256の3乗分、16,777,216通りの色を設定することができます。