構文
Range.Resize(RowSize , ColumnSize)
RowSize・・・指定したセル範囲の行数を変更する 【省略可能】
ColumnSize・・指定したセル範囲の列数を変更する 【省略可能】
ColumnSize・・指定したセル範囲の列数を変更する 【省略可能】
RangeやCellsを理解したら、セル範囲のサイズ変更するリサイズの概念を理解しましょう。
セル範囲のサイズを変更するResizeプロパティのサンプルコード
Public Sub sample()
'■RangeのSelect
Range("B2:E10").Select 'セル範囲が選択される
Debug.Print Selection.Address '$B$2:$E$10
'■RangeのResizeのSelectはセル範囲の対象とするだけ(選択されない)
Range("B2:E10").Resize().Select 'セル範囲は選択されない
Debug.Print Selection.Address '$B$2:$E$10
'■行も列を最小の値にする
Range("B2:E10").Resize(1, 1).Select
Debug.Print Selection.Address '$B$2
'■行を最小の値にする(列は省略するとそのまま)
Range("B2:E10").Resize(1).Select
Debug.Print Selection.Address '$B$2:$E$2
'■列を最小の値にする(行は省略するとそのまま)
Range("B2:E10").Resize(, 1).Select
Debug.Print Selection.Address '$B$2:$B$10
'■行だけ1行拡張する
Range("B2:E10").Resize(Selection.Rows.Count + 1).Select
Debug.Print Selection.Address '$B$2:$E$4
'■列だけ1列拡張する
Range("B2:E10").Resize(, Selection.Columns.Count + 1).Select
Debug.Print Selection.Address '$$B$2:$F$10
End Sub
注意点
- 今回はシート名などは明示していませんのでActiveSheetから取得します。
- 別のシートや別のブックのセル範囲を取得する場合は、Worksheetsを事前に指定しましょう。
ワークシート名を変数にSetし、短い名前で利用する【マクロ初級者必読】
関連記事
選択しているセルの表範囲を取得する【CurrentRegionプロパティ】【ExcelVBA】
ヘッダー行(見出し)を除いて表範囲を取得する【CurrentRegion応用】【ExcelVBA】



コメント