よしみな ブログ

資格試験・就活・労働問題・資産運用について記事を上げていきます。

表のセルを指定するVBA(マクロ) CurrentRegion

今回は表全体のセルを指定するVBAの解説を行います。

 

Excelで使用するデータは表がほとんどだと思いますが、CurrentRegionを知らない場合と知っている場合とでは、VBAの便利度が変わってくると思います。

 

CurrentRegion
基準とするセル.CurrentRegionとすることで、基準とするセルが含まれる表をすべて操作対象とするプロパティです。

 

使用方法

表全体を指定する場合は下記のようにVBAプログラムコードを書きます。

    Cells(2, 2).CurrentRegion.Select

とすることで、セルB2を含む表全体を選択した状態になります。

実行する前と実行した後のExcelがどうなるかの画像を下記に表示しておきます。

 

f:id:yosi_mina:20200426210047p:plain

表データ

 

f:id:yosi_mina:20200426210133p:plain

実行結果

使用方法は以上です。

 

 

!!注意!!

CurrentRegionにて表全体を指定する場合、Excelで作成している表の周り1セルは空白セルでないと表が広がってしまいます。注意してください。

文章だけではわからないかと思いますので、実際にやってみます。

 

表データを下記のようにします。

f:id:yosi_mina:20200426210222p:plain

表データ2

 

 

そして上記と同様のマクロコード

    Cells(2, 2).CurrentRegion.Select

を実行すると下記のようになります。

f:id:yosi_mina:20200426210250p:plain

実行結果



このように表の周りが空白セルでない場合、どこまでも表として扱われてしまいます。

データを作る際に気を付ける部分です。しかし、注意してまでもやるメリットは大きいと思います。

 

まとめ
  • CurrentRegionで基準とするセルが含まれる表全体を操作対象とする。
  • 選択する表の周りの1セルは空白セルでないと周りのセルも表として認識されてしまう。

 

以上です。

 

ここまで読んでいただき、ありがとうございました。