ワークシートセルの列幅を設定するマクロです。列幅を設定するには、ColumnWidthプロパティで設定します。Columnsプロパティで範囲を指定して設定することができます。
AutoFitメソッドを使うと、列幅を自動で最適化することができます。
ColumnWidthプロパティで列幅を設定する
列幅の単位は文字数になっています。
列幅が「10」なら標準フォントの「0(半角)」が10個入ります。

Columnsプロパティ で列を指定して、列幅を設定します。
Sub サンプル4270_1()
Columns(3).ColumnWidth = 20
Columns(3).UseStandardWidth = True
End Sub
コード解説
Columns(3).ColumnWidth = 20
’Columnsプロパティで3列目を「20」にします。

Columns(3).UseStandardWidth = True
’3列目の列幅を規定値にします。

Columnsプロパティで複数の列幅を設定する

複数行の高さを設定します。
Sub サンプル4270_2()
Columns("B:D").ColumnWidth = 15
Columns("B:D").UseStandardWidth = True
End Sub
コード解説
Columns(“B:D”).ColumnWidth = 15
’B列~D列の列幅を「15」にします。

Columns(“B:D”).UseStandardWidth = True
’B列~D列の列幅を規定値にします。

AutoFitメソッドで列幅を自動で最適化する

AutoFitメソッドで列幅を自動で最適化します。
Sub サンプル4270_3()
Columns("A:F").AutoFit
Columns("A:F").UseStandardWidth = True
End Sub
コード解説
Columns(“A:F”).AutoFit
’A列~F列の列幅を自動で調節します。

Columns(“A:F”).UseStandardWidth = True
’A列~F列の列幅を既定値にします。

Cellsプロパティでシート全体の列幅を最適化する
シート全体を選択して、シート全体に対して列幅の最適化をします。
引数を省略したCellsプロパティを使います。
Sub サンプル4270_4()
Cells.Select
Selection.Columns.AutoFit
End Sub
コード解説
Cells.Select
’すべてのセルを選択します。
Selection.Columns.AutoFit
’すべての列を選択して、列幅を最適化します。
マクロの実行前

マクロの実行結果
データが入っている列幅を最適化します。

ワークシートを指定して列幅を設定する

シートを指定して列幅を設定するには、Worksheets(“Sheet1”) や Worksheets(1) のようにシートを指定します。
Sub サンプル4270_5()
Worksheets("Sheet1").Columns(1).ColumnWidth = 10
Worksheets("Sheet1").Columns("A").UseStandardWidth = True
Worksheets(2).Columns("A:C").ColumnWidth = 10
Worksheets(2).Columns("A:C").UseStandardWidth = True
End Sub
コード解説
Worksheets(“Sheet1”).Columns(1).ColumnWidth = 10
’シート1のA列の列幅を「10」にします。

Worksheets(“Sheet1”).Columns(“A”).UseStandardWidth = True
’シート1のA列の列幅を既定値にします。

Worksheets(2).Columns(“A:C”).ColumnWidth = 10
’シート2のA列~C列の列幅を「10」にします。

Worksheets(2).Columns(“A:C”).UseStandardWidth = True
’シート2のA列~C列の列幅を既定値にします。

まとめ
ColumnWidthプロパティで、列幅を設定することができます。
UseStandardWidthを使うと、列幅を規定値にすることができます。
AutoFitメソッドで列幅を自動で最適化します。