【EXCEL VBA】データ行数を取得する方法

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

この記事では使用例を使って、データ行数を取得する方法をご紹介します。

使用例1:空白行がない場合

  1. 「実行」ボタンをクリック
  2. 「データ行数」を求めて、セルに値を設定

 

使用例2:空白行がある場合

  1. 「実行」ボタンをクリック
  2. 「データ行数」を求めて、セルに値を設定

 

使用するプロパティ

Endプロパティ

Rangeオブジェクト.End(Direction)

解説 Rangeオブジェクトで指定したセルを基準として、引数Directionで指定した方向の終端のセルを取得する。
Rangeオブジェクトで指定したセルを基準として、引数Directionで指定した方向の次のセルにデータが入力されている場合は、連続してデータが入力されているセル範囲の終端のセルを取得する。
次のセルにデータが入力されていない場合は、その先にあるセルを調べて、データが入力されている最初のセルを取得する。
指定した方向にデータが何も入力されていない場合は、ワークシートの最終セルを取得する。
 引数 Direction:
終端の方向を指定する。
設定値 内容
xlUp 上方向
xlDown 下方向
xlLeft 左方向
xlRight 右方向

ボタンの作成

「開発」タブの確認

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

 

 

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

ボタンの作成

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

 

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

 

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

 

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

 

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

 

ボタンの名前を変更する

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

 

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

 

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

 

「使用例1」のサンプルプログラム

VBAコードの入力

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

3 「データ行数」取得用変数「DataRowCnt」を宣言
5 「A6」セルを基準にして、下方向にデータのある最終行を取得。データ開始位置は6行目からなので、データのある最終行15から5を引く。結果を変数「DataRowCnt」に格納。
7 変数「DataRowCnt」の値を、「A3」セルに設定。

「使用例2」のサンプルプログラム

VBAコードの入力

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

3 「データ行数」取得用変数「DataRowCnt」を宣言
5 「エクセルシートの最大行」のセルを基準にして、上方向にデータのある最初の行を取得。データ開始位置は6行目からなので、データのある最初の行16から5を引く。結果を変数「DataRowCnt」に格納。
※「Rows.Count」でエクセルシートの最大行数を取得できます。
7 変数「DataRowCnt」の値を、「A3」セルに設定。

VBAコードの保存

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

 

 

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

 

 

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

 

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