Home » Excel VBA Rangeオブジェクト » Offsetプロパティ » 見出し行以外を選択する−Offset・Resizeプロパティ

見出し行以外を選択する−Offset・Resizeプロパティ

対象:Excel97, Excel2000, Excel2002, Excel2003

CurrentRegionプロパティを使って、アクティブセル領域を選択する方法をご紹介しました。

複数のワークシートを1枚のシートにまとめる処理をコーディングする場合、1枚目のシートのデータをコピーする際は「Range("A1").CurrentRegion.Select」で問題ありませんが、2枚目以降のシートでは見出し行が余分ですから、見出し行を除いたリスト範囲を選択する必要が出てきます。

[スポンサードリンク]

選択範囲をずらして選択するOffsetプロパティと、選択範囲のサイズを変更するResizeプロパティを利用すると、見出し行を除いた範囲を選択することができます。

▼A1セルから始まる表の見出し行を除いて選択するコード
Range("A1").CurrentRegion.Select
Selection.Offset(1, 0).Select
Selection.Resize(Selection.Rows.Count - 1).Select

1行目の、

Range("A1").CurrentRegion.Select

で、A1セルのアクティブセル領域を選択しておいて、
2行目の

Selection.Offset(1, 0).Select

で、選択範囲を1行下にずらして、
3行目の、

Selection.Resize(Selection.Rows.Count - 1).Select

で、選択範囲を1行減らしています。

ワークシートを見ながらステップ実行していただくと、何をしているのかよくわかるはずです。

Resizeプロパティの引数の「Selection.Rows.Count - 1」は、「Selection.Rows.Count」で選択範囲の1行目の見出し行を含む行数を取得して、そこから1行目を除くために「1」を減算することを表しています。

[スポンサードリンク]

Home » Excel VBA Rangeオブジェクト » Offsetプロパティ » 見出し行以外を選択する−Offset・Resizeプロパティ

「Offsetプロパティ」の記事一覧

検索


Copyright © インストラクターのネタ帳 All Rights Reserved.

.