#menu(menu-pc)
***列幅を自動調整する(Excel 97/2000/2002/2003/2007) [#c1d874c3]

手動操作で列幅を調整するのは簡単です。
列見出しの境界線をマウスでドラッグすればいいです。
たとえばB列の幅を広げるときは、列見出し[B]の右側にマウスポインタを合わせ
マウスポインタが変化したら列見出しを右方向にドラッグします。

もうひとつ、Excelには列の幅や行の高さを自動的に調整する機能があります。
操作は簡単。列見出しをダブルクリックするだけです。
実行すると、その列のうち最も長いデータが入力されているセルの幅に
列全体の幅が自動的に調整されます。
この操作をマクロ記録すると、次のようなコードが得られます。

 Sub Macro1()
   Columns("B:B").EntireColumn.AutoFit
 End Sub   

もちろん、次のように複数列を同時に自動調整することも可能です。

 Sub Macro2()
   Columns("B:D").EntireColumn.AutoFit
 End Sub   

EntireColumnプロパティは指定したセルを含む列全体を返すプロパティです。
Range("B2").EntireColumnはB列全体を返します。
もっとも、記録されたコードのColumns("B:B")が、すでにB列全体を表しています
のでB列の列幅を自動調整するには

 Sub Sample1()
   Columns("B:B").AutoFit
 End Sub   

でも同じことです。

Excelにはもうひとつ、列のうち特定のセルに列幅を自動調整する機能があります。
たとえば、B列に入力されている他のセルは無視して、セルB2に入力されている
データの長さにB列全体を自動調整する機能です。
この場合は、

 Sub Sample2()
   Range("B2").Columns.AutoFit
 End Sub   

このように、Columnsに対してAutoFitを実行します。
マクロ記録で得られるEntireColumnを使って

 Sub Sample3()
   Range("B2").EntireColumn.AutoFit
 End Sub   

とすると、Range("B2")を含む列(B列)全体が最も長いデータに自動調整されます。
両者のマクロは似ていますが、意味が異なりますので留意してください。



#html(<hr style="border-color:yellow;border-style:solid">)

トップ   編集 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS