【Excel VBA】行の高さ・列の幅を一括で調整するマクロの作り方

エクセルマクロ(VBA)
記事内に広告が含まれています。

Excelで「列の幅が狭くて数字が見えない」「行の高さがバラバラで見づらい」といった経験はありませんか?

手作業での調整は時間がかかりますが、VBA(マクロ)を使えば一瞬で解決できます。

この記事では、プログラミング未経験でもコピペで使える行の高さ・列の幅を自動調整するVBAコードを紹介します。

手動で自動調整する方法は「行」の高さと「列」の幅を自動調整する Excel(エクセル)を参照してください。

ちょうど良い幅と高さに自動調整する

まずこちらの表を見てください。

「B」列の日付と「E」列の金額は幅が狭いせいで「#######」と表示されて日付と金額が読み取れません。

また「C」列は前部分だけ見えて後半は「D」列に隠れて読み取れません。「D」列は収まりきらず、「E」列にまたがってしまっています。

「列」の幅を自動調整する

Excel VBAを使えば、列幅の自動調整が簡単にできます。

まずは幅が狭くて見えなくなっているセルを表示させるために「B~G」列の幅を調整してみます。

幅の自動調整するためには「EntireColumn.AutoFit」を使います。

記載例はこちら

Sub 幅調整()
    Columns("B:G").EntireColumn.AutoFit ' ← B列からG列までの幅を自動調整
End Sub

これを実行すると

「B~E」までは幅が広くなり入力されたデータが読みやすくなりました。

「F」と「G」列は逆に広すぎて無駄だったスペースがちょうど良いサイズに小さく調整されました。

「行」の高さを自動調整する

次に行の高さも「2~12」行目の高さを調整してみます。

高さの自動調整するためには「EntireRow.AutoFit」を使います。

記載例はこちら

Sub 高さ調整()
    Rows("2:12").EntireRow.AutoFit   ' ← 2行目から12行目までの高さを自動調整
End Sub

このマクロコードで行高さを一括変更しましょう

なんと「3行目」が広くなりました。最初は気が付きませんでしたが、「D3」セルは改行されていていて、「文房具」という文字が丸々見えなくなっていました。このマクロですべてのデータが表示される高さに自動調整させることができました。

任意の幅と高さに変更する

「列」の幅を任意のサイズに変更する

「G」列はデータが入っていませんので「備考」の2文字分まで幅が小さくなっていますが、今後複数の文字が入力される可能性があるので、広めに設定したいとします。

幅を任意のサイズに指定するには「.ColumnWidth = [任意の数字]」を使います。

記載例はこちら

Sub 幅調整()
    Columns("G:G").ColumnWidth = 30.05  ' ← G列の幅を30.05に指定
End Sub

これを実行すると

備考のサイズを広くすることができました。

「30.05」の部分を好きな数字に変えれば好きなサイズに変更することができます。

「行」の高さを任意のサイズに変更する

「2行目」のタイトル行を少し広くして見やすくしてみます。

高さを任意のサイズに指定するには「.RowHeight = [任意の数字]」を使います。

記載例はこちら

Sub 高さ調整()
    Rows("2:2").RowHeight = 30.05   ' ← 2行目の高さを30.05に指定
End Sub

これを実行すると

タイトル行が少し広くなって見やすくすることができました。

まとめ

今回はマクロを使って自動調整したり任意のサイズに変更する方法をご説明しました。

手動で自動調整したりすべて同じサイズに変更することもできますので詳しい方法は「行」の高さと「列」の幅を自動調整する Excel(エクセル)を参照してください。

📢 この記事が役に立ったと感じたら…

リンクやSNSでのシェアで応援していただけると、とても励みになります!

👇ワンクリックでこのページのURLをコピーできます👇

コメント

タイトルとurlをコピーしました