← コード一覧へ戻る
基本行・列

選択範囲の列幅を自動調整する

現在選択しているセル範囲に含まれる列の幅を自動調整します。

実行前に確認

  • 選択範囲以外の行にも列幅の変更が反映されます。図形を選択した状態では処理を止めます。

1サンプルコード

Sub Example1142()
    If TypeName(Selection) <> "Range" Then
        MsgBox "セル範囲を選択してください。"
        Exit Sub
    End If
    Selection.EntireColumn.AutoFit
End Sub

図で見る操作の流れ

イメージ図

コードの動きを表した概念図です。実際のExcel画面ではありません。

  1. 手動:セル範囲を選ぶ

    幅を調整したい列にあるセルを選択する

  2. マクロ:選択の種類を確認

    セル範囲なら、その範囲を含む列全体を対象にする

  3. 結果:列幅を自動調整

    列の内容に合わせて幅を調整する

図形などを選択している場合は案内を表示して終了します。選択していない行にも同じ列幅が適用されます。

コードの処理を説明する模式図です。実際の画面や実行結果を撮影したものではありません。

使い方・実行手順を確認する4つの手順で、コードの使い方を確認できます
  1. 1

    練習用のブックを.xlsm形式で保存し、Sheet1という名前のシートを用意します。長さの異なる文字を入れ、調整したいセル範囲を選択します。

  2. 2

    Alt+F11でVBEを開き、[挿入]→[標準モジュール]へコードを貼り付けます。

  3. 3

    この例はSheet1に固定せず、実行時に選択したシート・範囲を使います。

  4. 4

    マクロ内にカーソルを置いてF5で実行します。選択範囲を含む列の幅が変わります。

使っている機能の公式ドキュメント(Microsoft Learn)