• 公開日:

Excel VBAで列の幅を自動調整する方法

この記事では、VBAで列の幅を自動調整する方法をご紹介します。

VBAを使えば複数列の幅を一括で自動的に揃えることができるため、表やリストの見た目を簡単に整えることが出来ます。

VBAに慣れていない方でも簡単にできるので参考にしてみてください。

Excel VBAで列の幅を自動調整するコードについて

エクセルでは、VBAで列の幅を自動調整する方法があります。今回はA列からJ列までの範囲を指定して列の幅を自動調整するコードをご紹介します。

 Sub SetColumnWidth()
    Dim ColumnNum As Integer
    Dim targetWidth As Double


    ' 目標とする列の幅を設定(ポイント単位)
    targetWidth = 15
 

    ' A列からJ列までの幅を変更
    For ColumnNum = 1 To 10
        Columns(ColumnNum).ColumnWidth = targetWidth
    Next ColumnNum


End Sub

列の幅を変更する場合は、「targetWidth = 15」の数値を変更すればポイント数で設定できます。

また、列数を変更したい場合は「For ColumnNum = 1 To 10」の「1 To 10」を変更すれば、B列~E列など任意の列数を設定できます。

開発タブが表示されていない場合

エクセルのVBAを編集する場合は、下記の画像のような「開発」タブを表示させる必要があります。

開発タブの表示確認

開発タブが表示されていない場合は、以下の記事「開発タブの表示方法」セクションでエクセルの開発タブを表示させましょう。

エクセルの開発タブを表示する方法

列の幅を自動調整するVBAの設定方法

VBAで列の幅を自動調整する方法をご紹介します。

開発タブ、②Visual Basicの順に選択します。

「Microsoft Visual Basic for Applications」が開きました。①挿入タブ、②標準モジュールの順に選択します。

上記のコードをコピーし、モジュールにペーストします。

ファイルタブ、②上書き保存の順に選択します。その際に、ダイアログボックスで「次の機能はマクロなしのブックには保存できません」と表示された場合は、「いいえ」を選択してください。

「名前を付けて保存」ダイアログボックスが表示されました。①保存先(例:デスクトップ)を選択し、②ファイル名(例:列の幅を自動調整する)を入力します。③ファイルの種類でExcelマクロ有効ブックを選択し、④保存ボタンを押します。

これで列の自動調整の設定ができました。マクロが機能するか確認してみましょう。①開発タブ、②マクロの順に選択します。

「マクロ」ダイアログボックスが表示されました。①作成したマクロ(例:SetColumnWidth)を選択し、②実行ボタンを押します。

列がコードで設定した幅に自動調整されました。これで、VBAで列の自動調整をする設定が完了しました。