【VBA】使用している範囲を取得する
Excel上のデータ整理等で
上のような画面の集計データを扱う事は少なくないかと思います。
その表のデータ全体を選択する方法は、
1.基準のセル.CurrentRegion プロパティ
2.ワークシート.UsedRange プロパティ
の2つの方法が挙 げられると思います。
それぞれについて、実際の画面を見ながら解説します。
1.Range.CurrentRegionプロパティ
Range("A1").CurrentRegion.Select
これはショートカットキーで
「Ctrl + A」を押した時に得られる結果と同じです。
例えば、セル【A1】から始まるデータがあったとすると、カーソルを【A1】に合わせて「Ctrl + A」した場合、VBE上では上のコードとなります。これはデータが続く限りの部分を選択している事になります。
つまり、データの途中で空白行・列があったりすると、そこで選択は途切れる、という事になります。
2.Worksheet.UsedRange プロパティ
ActiveSheet.UsedRange.Select
対してこちらは、データの途中に空白行・列があろうとも、使用しているセルがある場合は、そこまでを該当範囲とします。ちなみに、セル内に何も記載が無くても罫線が引いてあれば、これも該当範囲としてみなされます。また、一度、セル内に記載をし、BackSpaceやDeletで内容を取消しても、或いは罫線を引いて、取消したとしても、そのセル自体を削除しなければ、該当の範囲から抜け出せませんので、ご注意ください。
上記2つの使用例とすれば、
「複数Sheetに散らばった表データを1つのSheetにまとめる」際に役に立つかと思います。詳しくは別のページにまとめました。下記のページを宜しければご参照ください。
何かのお役に立てれば幸いです。
以上になります。