教えて!ExcelVBA!

ExcelVBAの基礎知識・書き方について紹介します。

ExcelVBAで文字列幅をセル幅に合わせる方法

構文

構文は以下の通りです。

Cells(行番号, 列番号).EntireColumn.AutoFit

解説

Cells(行番号, 列番号)は、特定のセルを指定するための構文です。行番号と列番号を指定することで、Excelのどのセルを対象にするかを決めます。EntireColumnは、指定したセルが含まれる列全体を対象にします。AutoFitは、列幅を自動的にセル内の内容に合わせます。これを使うことで、列内の最も長い文字列に合わせて列幅が自動的に広がります。

プログラミング例

具体的なプログラミング例を紹介します。

Sub 文字列幅をセル幅に合わせる()
    ' 1行目の1列目(セルA1)に文字列を入力
    Cells(1, 1).Value = "これは長い文字列です"
    ' 1行目の1列目の列幅を文字列に合わせて自動調整
    Cells(1, 1).EntireColumn.AutoFit
End Sub

上記のプログラムは、まずセルA1に「これは長い文字列です」という文字列が入力されます。次に、Cells(1, 1)でセルA1を指定し、そのセルが含まれる列全体の幅をAutoFitを使って文字列に合わせて自動調整します。

まとめ

セル内の文字列幅を列幅に合わせるには、AutoFitを使用します。これにより、文字列が見切れることなく表示され、見やすいスプレッドシートを作成することができます。