Excelで作業していると、「この列もうちょっと広げたいな」「行の高さがバラバラで見づらいな」と感じることありませんか?手作業で一つ一つ調整するのは、時間がかかって大変ですよね。
でも、大量のデータを扱う時や、複数のシートで同じ調整をしなければならない時、手作業では限界があります。効率的に作業を進めるには、どうすればいいのでしょうか?
実は、Excelのマクロ(VBA)を使えば、これらの調整を一瞬で行うことができます。私は長年Excelのマクロ開発に携わってきましたが、この方法で多くのユーザーの作業時間を大幅に削減してきました。
この記事では、ExcelのVBAを使って「行」の高さと「列」の幅を簡単に変更する方法を解説します。
Excelの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(エクセル)を参照してください。
\エクセルを勉強するならこれ!/
コメント