はじめに
Excelで作業をしていると、
「文字の色を変えたい」
「背景色をつけたい」
「フォントサイズを整えたい」
そんな“ちょっとした整えごと”がよくあります。
VBAでは、セルの書式を細かくコントロールでき、
表の見やすさや読みやすさを静かに支えてくれます。
ここでは、セルの書式を変更する基本のコードと、実務で役立つポイントを解説します。
まずはコードを確認
Range("A1").Font.Bold = True
Range("A1").Interior.Color = vbYellow
もっともシンプルな書き方です。
A1セルを太字にし、背景色を黄色にします。
書式変更の基本プロパティ
フォントの書式を変更する
Range("A1").Font.Bold = True '太字
Range("A1").Font.Italic = True '斜体
Range("A1").Font.Size = 14 'フォントサイズ
Range("A1").Font.Color = vbRed '文字色
よく使うプロパティは Font の中にまとまっています。
背景色を変更する
Range("A1").Interior.Color = RGB(255, 230, 153)
RGB を使うと、やわらかい色も自由に設定できます。
罫線を設定する
With Range("A1:D1").Borders
.LineStyle = xlContinuous
.Weight = xlThin
End With
表の見た目を整えるときに欠かせない書式です。
表示形式(NumberFormat)を変更する
Range("A1").NumberFormat = "yyyy/mm/dd" '日付
Range("B1").NumberFormat = "#,##0" 'カンマ区切り
Range("C1").NumberFormat = "0.0%" 'パーセント
実務で特に使う頻度が高いプロパティです。
具体的な例で理解する
見出し行の書式をまとめて変更する
With Range("A1:D1")
.Font.Bold = True
.Interior.Color = RGB(220, 230, 241)
.HorizontalAlignment = xlCenter
End With
見出しを整えると、表全体が落ち着いた印象になります。
条件に応じて書式を変える
If Range("B2").Value < 0 Then
Range("B2").Font.Color = vbRed
End If
マイナス値を赤字にするなど、実務でよく使うパターンです。
複数セルに一括で書式を設定する
Range("A2:A10").Font.Size = 12
Range("A2:A10").Interior.Color = vbWhite
範囲指定でまとめて整えられます。
書式変更の注意点(実務で特に大切)
- 書式は「値」とは別物
→ コピー・貼り付けのときに意図しない書式がつくことがあります。
- 条件付き書式と競合することがある
→ 条件付き書式が優先されるため、VBAの書式が反映されない場合があります。
- 大量のセルに書式を設定すると処理が重くなる
→ With を使う、範囲を絞るなどの工夫が有効です。
応用:書式をクリアする
Range("A1:D10").ClearFormats
書式だけをリセットしたいときに便利です。
応用:書式をコピーして貼り付ける
Range("A1").Copy
Range("B1").PasteSpecial xlPasteFormats
見た目を揃えたいときに使います。
まとめ
- フォント・背景色・罫線・表示形式など、書式は細かく設定できる
- Font、Interior、NumberFormat が基本
- 条件に応じた書式変更も可能
- 書式は値とは別物のため、コピー時の挙動に注意
- ClearFormats で書式だけリセットできる
セルの書式を整えることは、
「読みやすさ」という静かな価値を生み出す大切な作業です。

書式を整えることは、表にやさしさを添える作業です。
VBAで自動化できると、毎日の整えごとがすっと軽くなります。

色や文字の形を変えるだけで、表がふわっと見やすくなるね。
VBAは、そんな小さな気配りも得意なんだなあ。

コメント