【VBA入門】背景色・文字色を変更する方法|セルの色を自由に設定

VBA色変更 VBA
記事内に広告が含まれています。

はじめに

Excel VBAでは、セルの背景色や文字色を自由に設定できます。
表の見やすさ向上や条件付きの強調表示など、色操作は業務効率化に欠かせません。
この記事では色の変更方法クリア(元に戻す)方法を、サンプルコード付きで解説します。


1. 背景色を変更する

背景色は .Interior.Color または .Interior.ColorIndex を使用します。

例1:RGB関数で背景色を設定

Sub ChangeBackground_RGB()
'セルA1の背景色を黄色に変更
Range("A1").Interior.Color = RGB(255, 255, 0)
End Sub
  • RGB(赤, 緑, 青) の値は0〜255で設定
  • 細かい色指定が可能

例2:ColorIndexで背景色を設定

Sub ChangeBackground_ColorIndex()
'セルA1の背景色をColorIndex=6(黄色)に変更
Range("A1").Interior.ColorIndex = 6
End Sub
  • Excelの標準カラーパレット番号を指定
  • 環境によって色番号が異なる場合あり

2. 文字色を変更する

文字色は .Font.Color または .Font.ColorIndex を使用します。

例1:RGB関数で文字色を設定

Sub ChangeFont_RGB()
'セルA1の文字色を赤に変更
Range("A1").Font.Color = RGB(255, 0, 0)
End Sub

例2:ColorIndexで文字色を設定

Sub ChangeFont_ColorIndex()
'セルA1の文字色を青に変更
Range("A1").Font.ColorIndex = 5
End Sub

3. 背景色と文字色を同時に変更

Sub ChangeBackgroundAndFont()
With Range("A1")
.Interior.Color = RGB(0, 255, 0) '背景を緑
.Font.Color = RGB(255, 255, 255) '文字を白
End With
End Sub

4. 色をクリア(元に戻す)方法

設定した色を元の状態に戻す場合は、以下を使用します。

背景色をクリア

Sub ClearBackground()
Range("A1").Interior.ColorIndex = xlNone
End Sub

文字色をクリア

Sub ClearFontColor()
Range("A1").Font.ColorIndex = xlAutomatic
End Sub

背景色と文字色を同時にクリア

Sub ClearBackgroundAndFont()
With Range("A1")
.Interior.ColorIndex = xlNone
.Font.ColorIndex = xlAutomatic
End With
End Sub

💡 補足
.ClearFormats を使えば、罫線やフォントサイズなども含めて書式を一括クリアできます。


5. RGBとColorIndexの使い分け

方法特徴向いているケース
RGB0〜255の値で細かく色を指定できるブランドカラーや特定の色コードを使用する場合
ColorIndex標準パレット番号で簡単指定色が固定でOK、簡単に設定したい場合

まとめ

  • 背景色 → .Interior.Color(RGB推奨)または .Interior.ColorIndex
  • 文字色 → .Font.Color(RGB推奨)または .Font.ColorIndex
  • クリア → 背景色は xlNone、文字色は xlAutomatic

色操作を覚えると、VBAでのExcel管理がより見やすく、分かりやすくなります。

タイトルとURLをコピーしました