【EXCEL VBA】指定したセル範囲のセル数、行数、列数を数える方法

訪問して頂きありがとうございます。まさふくろーです。

この記事では使用例を使って、指定したセル範囲のセル数、行数、列数を数える方法をご紹介します。

使用例

  1. 「実行」ボタンをクリック
  2. 「A3~C8」セル(通信販売商品一覧表)のセル数、行数、列数を求める

 

使用するプロパティ

Countプロパティ

Rangeオブジェクト.Count

解説 要素の数を取得する。
取得される要素は、Rangeオブジェクトの種類によって異なる。通常は、セルの数が求められるが、Rowsプロパティで取得したRangeオブジェクトの場合は行数、Columnsプロパティで取得したRangeオブジェクトの場合は列数が求められる。
「Range(セル範囲).Rows.Count」「Range(セル範囲).Columns.Count」のように記述すると、セル範囲の行数や列数が求められる。また、先頭に何も指定せずに「Rows.Count」「Columns.Count」のように記述すると、ワークシートの全行数、全列数が求められる。

Rowsプロパティ

オブジェクト.Rows(RowIndex)

解説 引数RowIndexで指定した行を参照するためのRangeオブジェクトを取得する。
オブジェクトには、Worksheetオブジェクト、Rangeオブジェクトを指定する。オブジェクトを省略すると、アクティブシート(一番手前のシート)の行を参照する。
参照するセル
Rows 全行
Rows(2) 2行目
Rows("2:4") 2~4行目
Range("A3:D8").Rows(2) 「A3~D8」セルの2行目

Columnsプロパティ

オブジェクト.Columns(ColumnIndex)

解説 引数ColumnIndexで指定した列を参照するためのRangeオブジェクトを取得する。
オブジェクトには、Worksheetオブジェクト、Rangeオブジェクトを指定する。オブジェクトを省略すると、アクティブシート(一番手前のシート)の列を参照する。
参照するセル
Columns 全列
Columns(2) B列(ワークシートの2列目)
Columns("B:C") B列~C列
Range("A3:D8").Columns(2) 「A3~D8」セルの2列目
Worksheets("Sheet2").Range("A3:D8").Columns ワークシート「Sheet2」の「A3~D8」セルの全列

ボタンの作成

「開発」タブの確認

リボンに「開発」タブが表示されているかの確認をします。

 

 

「開発」タブが表示されていない場合は、「開発タブの表示」をご覧ください。

ボタンの作成

①「開発」タブをクリック⇒②「挿入」をクリック⇒③「ボタン」をクリックします。

 

シート上にカーソルを移動し、ポインターを「+」の状態にします。

 

左クリックを押したまま、緑の矢印の方向にズルズルっとカーソルを移動します。

 

「マクロの登録」画面が表示されます。

 

①「マクロ名」を変更⇒②「新規作成」ボタンをクリックします。

 

ボタンの名前を変更する

エクセルのブックに戻り、ボタンの上にフォーカスを当てます。すると、ポインターが「」マークに切り替わります。

 

右クリックでショートカットメニューを表示し、「テキストの編集」を選択します。

 

ボタンの名前を変更します。

 

サンプルプログラム

VBAコードの入力

VBE(Visual Basic Editor)のピンク枠の部分に、VBAコードを入力していきます。

3 「A3~C8」セルのセル数を求めて、「F3」セルに値を設定する。
5 「A3~C8」セルの行数を求めて、「F4」セルに値を設定する。
7 「A3~C8」セルの列数を求めて、「F5」セルに値を設定する。

VBAコードの保存

「ファイル」タブをクリックします。

 

 

「名前を付けて保存」を選択し、ファイル保存画面を起動します。

 

 

①ファイル名を入力⇒②「Excel マクロ有効ブック(*.xlsm)」を選択⇒③「保存」ボタンをクリックします。

 

最後まで読んでいただき、ありがとうございました!