PR
スポンサーリンク

マクロで「行」の高さと「列」の幅を変更する Excel(エクセル)マクロ(VBA)

スポンサーリンク
スポンサーリンク

VBAによって行の高さと列の幅を自動で調整したり、任意の高さと幅に変更する方法をご説明します。

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

スポンサーリンク

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

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

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

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

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

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

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

記載例はこちら

Sub 幅調整()
    Columns("B:G").EntireColumn.AutoFit
End Sub

これを実行すると

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

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

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

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

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

記載例はこちら

Sub 高さ調整()
    Rows("2:12").EntireRow.AutoFit
End Sub

これを実行すると

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

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

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

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

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

記載例はこちら

Sub 幅調整()
    Columns("G:G").ColumnWidth = 30.05
End Sub

これを実行すると

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

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

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

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

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

記載例はこちら

Sub 高さ調整()
    Rows("2:2").RowHeight = 30.05
End Sub

これを実行すると

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

まとめ

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

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

コメント

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