書式をいろいろ設定して書式が変化したときに、セルの高さや幅を規定値に戻したい場合があります。
ここではセルの高さと幅の既定値を取得して、シートをもとの状態に戻す設定を説明します。
セルの高さや幅を規定値に変更する
エクセルのシートにデータがあって、高さや幅が規定値と変化しているときこのシートを、もとに戻す方法を説明します。
サンプルコード
コード内、Wクリックでコピーできます。
Sub サンプル2100() '変数を宣言する Dim Hi As String Dim Col As String 'セルをクリアする Cells.Clear 'セルの高さを取得する Hi = ActiveSheet.StandardHeight 'セルを既定の高さにする Cells.RowHeight = Hi 'セルの幅を取得する Col = ActiveSheet.StandardWidth 'セルを既定の幅にする Cells.ColumnWidth = Col 'セルの位置をA1にする Cells(1, 1).Select End Sub
Cells.Clear
セルの罫線や背景、数値などすべてクリアします。
Hi = ActiveSheet.StandardHeight
規定の高さを取得して、変数Hi に代入します。
Cells.RowHeight = Hi
すべてのセルの高さを規定値に戻します。
Col = ActiveSheet.StandardWidth
規定の幅を取得して、変数Col に代入します。
Cells.ColumnWidth = Col
すべてのセルの幅を規定値に戻します。
Cells(1, 1).Select
セルの位置をセルA1 にします。
セルの幅を任意の値に変更する
次のような表があります。B列、C列、E列の幅が適切ではありませんので、マクロで修正します。
サンプルコード
コード内、Wクリックでコピーできます。
Sub サンプル2105() Columns("B:C").ColumnWidth = 13 Columns("E").ColumnWidth = 15 End Sub
Columns("B:C").ColumnWidth = 13
B列とC列の幅を「13」にします。
Columns("E").ColumnWidth = 15
E列の幅を「15」にします。
AutoFitメソッドでセル幅を自動的に調整する
次のような表があります。
AutoFitメソッドでセル幅を自動的に調整します。
サンプルコード
コード内、Wクリックでコピーできます。
Sub サンプル2110() Columns("B:E").AutoFit End Sub
Columns("B:E").AutoFit
セルBからセルEまでの、セル幅を自動的に適切な幅に調整します。
以上で「セルの高さや幅を規定値に変更する」の説明を終わります。