Excelで「表」を選択したい場合、ショートカットではCtrl+Shift+:(Windows)ですが、マクロでこれと同じ挙動をするプロパティとしてCurrentRegionが用意されています。
なお、「表」とは空白セル/先頭(末尾)列・行で分断された範囲のことを指します。
CurrentRegionプロパティの使い方
セルの所属する表を指定
対象.CurrentRegion
対象.CurrentRegion
![currentregion1](https://sunagitsune.com/wp-content/uploads/2021/05/currentregion1.jpg)
やりたいこととしては、こうした表に対して、
![currentregion2](https://sunagitsune.com/wp-content/uploads/2021/05/currentregion2.jpg)
全体を選択し、
![currentregion3](https://sunagitsune.com/wp-content/uploads/2021/05/currentregion3.jpg)
E列に貼り付けをしてみます。
![currentregion4](https://sunagitsune.com/wp-content/uploads/2021/05/currentregion4.jpg)
A1~C7の表をこの場合選択したいわけですが、表内のいずれかのセル、たとえばRange(“A1”).CurrentRegion.Selectとしてやれば、
![currentregion5](https://sunagitsune.com/wp-content/uploads/2021/05/currentregion5.jpg)
A1セルの所属する表全体が選択されます。
Range(“C7”).CurrentRegionなど別のセルでもいいですし、表からはみ出なければ範囲指定でもOKです。表のサイズが変更になっても問題ないように、見出しのあるセルなどを指定するのが無難です。
Range(“C7”).CurrentRegionなど別のセルでもいいですし、表からはみ出なければ範囲指定でもOKです。表のサイズが変更になっても問題ないように、見出しのあるセルなどを指定するのが無難です。
![currentregion6](https://sunagitsune.com/wp-content/uploads/2021/05/currentregion6.jpg)
あとは選択した表を貼り付けられればいいので、Range(“A1:A3”).CurrentRegion.Copy Range(“E1”)とでもしてやれば、
![currentregion7](https://sunagitsune.com/wp-content/uploads/2021/05/currentregion7.jpg)
このように表をコピペすることができます。
コピーについてもう少しちゃんと知りたい方はこちらをご参照ください。
![](https://sunagitsune.com/wp-content/uploads/2018/12/mathematics-1509559_1280-160x90.jpg)
関数・演算子・メソッド・プロパティ名から探すExcel/VBA(マクロ)使い方・組み合わせ方まとめ
こちらはExcelやメソッドの諸機能を、機能の名称から探せるまとめ記事です。
コメント