VBAで行高・列幅を任意の値だけ拡張する方法

目次

概要

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

コード解説

  1. Range("B2").CurrentRegion
    セルB2を含む連続データ範囲を取得します。これにより、データ範囲の増減に対応できます。
  2. 列幅の拡張
    .Columns(idx).ColumnWidthで現在の列幅を取得し、+ 2することで2ポイントだけ広げます。
  3. 行高の拡張
    .Rows(idx).RowHeightで現在の行高を取得し、+ 10することで10ポイントだけ高くします。

応用例

  • 印刷時の視認性向上のために余白を確保
  • プレゼン資料向けに文字とセル枠の間隔を広げる
  • データ入力用のテンプレートを作成する際の調整

まとめ

AutoFitでは自動調整後の幅を変更できませんが、本方法を使えば既存の行高や列幅を基準に任意の拡張が可能です。視認性やレイアウト調整に役立ちます。

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!

この記事を書いた人

私が勉強したこと、実践したこと、してることを書いているブログです。
主に資産運用について書いていたのですが、
最近はプログラミングに興味があるので、今はそればっかりです。

目次