構文
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】
コメント