目次
概要
Excelの作業において、列幅や行高を自動調整するAutoFit
は便利ですが、見やすさのために少しだけ余白を持たせたい場合があります。本記事では、VBAを使って現在の列幅・行高を基準に、任意の値だけ拡張する方法をご紹介します。
サンプルコード
Sub ExpandRowAndColumn()
Dim idx As Long
With Range("B2").CurrentRegion
' 列幅を2ポイント拡張
For idx = 1 To .Columns.Count
.Columns(idx).ColumnWidth = .Columns(idx).ColumnWidth + 2
Next idx
' 行高を10ポイント拡張
For idx = 1 To .Rows.Count
.Rows(idx).RowHeight = .Rows(idx).RowHeight + 10
Next idx
End With
End Sub
コード解説
Range("B2").CurrentRegion
セルB2
を含む連続データ範囲を取得します。これにより、データ範囲の増減に対応できます。- 列幅の拡張
.Columns(idx).ColumnWidth
で現在の列幅を取得し、+ 2
することで2ポイントだけ広げます。 - 行高の拡張
.Rows(idx).RowHeight
で現在の行高を取得し、+ 10
することで10ポイントだけ高くします。
応用例
- 印刷時の視認性向上のために余白を確保
- プレゼン資料向けに文字とセル枠の間隔を広げる
- データ入力用のテンプレートを作成する際の調整
まとめ
AutoFit
では自動調整後の幅を変更できませんが、本方法を使えば既存の行高や列幅を基準に任意の拡張が可能です。視認性やレイアウト調整に役立ちます。