こんにちは。VBA講師の佐藤です。これまでにセルへの値の代入や計算式の設定を学んできましたが、今回は「見た目の制御」、つまりフォントとサイズの設定について解説します。
実務において、レポートの出力や請求書の作成では「見やすさ」が命です。手動で毎回フォントを整えるのは時間の無駄。VBAで一瞬にして美しい帳票を作るスキルを身につけましょう。
フォントの設定における基本の「型」
Excel VBAでフォントを操作する場合、Fontプロパティを使用します。対象となるセル範囲を指定し、その後にドットで繋いでプロパティを指定するのが定石です。
具体的なコード例を見てみましょう。
Range(“A1”).Font.Name = “MS ゴシック”
Range(“A1”).Font.Size = 12
ここで注意点があります。フォント名はPC環境に依存するため、Windowsで標準的な「MS ゴシック」や「メイリオ」を指定するのが無難です。
実務で頻出する「動的なフォント変更」の事例
ただフォントを変えるだけでは面白くありません。実務では「特定の条件を満たした時だけフォントを変える」という処理が求められます。
例えば、売上データの中で「目標未達の項目だけフォントを赤くし、サイズを大きくする」という処理は、マネジメント層への報告資料で非常に重宝されます。
Sub HighlightLowPerformance()
Dim r As Range
For Each r In Range(“B2:B100”)
If r.Value < 50000 Then
With r.Font
.Name = "メイリオ"
.Size = 14
.Bold = True
.Color = vbRed
End With
End If
Next r
End Sub
Withステートメントを活用してスマートに書く
上記のコードでも使いましたが、Withステートメントの活用は必須です。Fontプロパティは階層が深いため、毎回「Range(…).Font」と書くとコードが長くなり、可読性が落ちます。
特に、フォント名・サイズ・色・太字などを同時に設定する場合は、必ずWithで囲む癖をつけてください。これにより、メンテナンス性が格段に向上します。
講師からのアドバイス:読み手の視点を忘れない
最後に、技術的なポイントを一つ。フォントサイズを変更すると、セルの高さや幅が自動調整されない場合があります。もしフォントを大きくした後に文字が欠けてしまうようなら、「Columns(“A”).AutoFit」のように、自動列幅調整をセットで実行することを忘れないでください。
VBAは単に作業を自動化するツールではなく、「相手に情報を正しく伝えるためのツール」です。ぜひ、読み手が直感的に理解できる帳票作りを目指してください。
次回は、セルの背景色や罫線の操作について解説します。お楽しみに!
