HOME > 即効テクニック > Excel VBA > セル操作関連のテクニック > セル範囲のサイズを変更する(Resizeプロパティ)

即効テクニック

セル操作関連のテクニック

セル範囲のサイズを変更する(Resizeプロパティ)

(Excel 2000)
対象セル範囲のサイズを変更します。引数を省略した場合には、サイズの変更は行いません。従って、行サイズのみ、列サイズのみの変更も可能です。

 構文  Object.Resize(RowSize, ColumnSize)     取得のみ

 設定項目        内容
  Object          Rangeオブジェクト
  RowSize         新しい範囲の行サイズ[省略可能]
  ColumnSize      新しい範囲の列サイズ[省略可能]
●サンプル1●
Sub ResizeSamp1()

    '----セルB2〜C5を選択する
    Range("B2:C5").Select
    '----選択範囲に対して
    With Selection
        '----(1)行+1、列+3
        .Resize(.Rows.Count + 1, .Columns.Count + 3).Select
        '----(2)行+1のみ
'       .Resize(.Rows.Count + 1).Select
        '----(3)列+3のみ
'       .Resize(, .Columns.Count + 3).Select
    End With

End Sub
セルB2〜C5を選択後、(1)のステートメントで選択範囲を行方向、列方向にそれぞれ変更しています。対象セル範囲の元のサイズ±いくらかの数値でサイズを指定する場合、サンプルのようにWithステートメントとRows.Count/Columns.Countプロパティを使用すると便利です。

●注意
行サイズのみの変更をする際には、ResizeSmap1のコメントのうち、(2)ののステートメントのように記述します。同じく、列サイズのみの変更は(3)のステートメントを参照してください。なお、どちらの引数も0を指定するとエラーが発生します。