[VBA] アクティブセル領域を参照して登録データ件数を表示します

 ちょ~久しぶりのデータベース研究所の記事ですよ。
 今回は下のデータを使うので、コピーしてシートの B2 セル にぺったんこと貼り付けてくださいな~。ちなみに下の書籍データはこばとの「タイトルクリエーター」というソフトで作った架空のものなので、Amazon で探しても見つかりませんよ。念のため。

書籍名 著者 出版社
「頭の中のたまご」 棘成央 ルビー社
「狂ったシベリア」 新遙平 黒石公論社
「心の要塞」 獺越清大 ハスキー
「モナコで春夏秋冬」 惠良田喬樹 山岡書店
「人間の民主化」 平子田喜翔 旧時代社
「カントリーをめぐる旅」 裏村高之 悲壮社
「愉しい温泉宿」 袋谷剛充 隅川マーケティング
「猫たちの王国」 宗野慎弥 エメラルド社

 

CurrentRegionプロパティでアクティブセル領域を参照します

 さて上のデータを B2 セルに貼りつけると図のように周りを空白セルで囲まれすね~。このようなデータ範囲のことを アクティブセル領域 といって、VBA はひとかたまりのモノとして認識してくれます。

 アクティブセル領域は空白セルに囲まれた部分です

 この アクティブセル領域 を参照するには CurrentRegionプロパティ を使ってこんなふうに書きますよ。

 'セルC6を含むアクティブセル領域を選択します

 Sub ActiveRange1()

  Range("C6").CurrentRegion.Select

 End Sub

 実行してみると、ちゃんとデータ範囲が選択されるのね~。

 CurrentRegionプロパティでアクティブセル領域を選択

 上のマクロでは Range("C6") としているけど、ここは Range("B2") でも Range("D9") でも、そのセルがデータ範囲に含まれてさえいれば何でもかまいません。好きなセルを書いておいてくださいな。
 

登録データ件数を表示します

 それでは CurrentRegionプロパティを使って見出しを除いた登録データ件数をセル C12 に表示させてみましょ~。こんなふうに書くのね~。

 '見出しを除いたデータ件数を数えます

 Sub ActiveRange2()

  Range("C12").Value = Range("C6").CurrentRegion.Rows.Count - 1

 End Sub

 アクティブセル領域の行数を得て、見出しの 1 行ぶんだけを引いています。
 このマクロを実行してみると ......

 CurrentRegionプロパティで登録データ件数を表示

 こんなふうに登録データ件数が表示されますよ~。大きなデータを扱うときは、このマクロを用意しておくと便利ね~。あ、そうそう、書籍データの一番最初にある「頭の中のたまご」て、どんな内容なのか気になりませんか? 架空の本だから、そんなこと考えても仕方ないかもしれないけど、もし作家さんに「このタイトルで本を書いてくださいな~」て頼んだら、どんなお話になるんでしょうね~。皆さんも何か面白い物語を思いついたらコメントで教えてね。とりあえず今回はこのへんで。また次回お会いしましょ~。

 ≫ こばとのデータベース研究所

スポンサードリンク
末尾大型広告
末尾大型広告

コメントをどうぞ

メールアドレスが公開されることはありません。

日本語が含まれない投稿は無視されますのでご注意ください。(スパム対策)

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください