教えて!ExcelVBA!

ExcelVBAの基礎知識・書き方について説明していきます。

【ExcelVBA セル操作】入力されているレコード件数を数える(Rows.Count)方法を教えて!

       f:id:m_kbou:20200420125513p:plain

指定された範囲に入力されているレコード件数を数える方法について説明します。

 

【目次】

 

構文

記述方法は、以下の通りとなります。

=======================================================================

Range(”[セル値]”).CurrentRegion.Rows.Count =======================================================================

[説明]:

入力されているレコード件数を数えるには「Range(”[セル値]”).CurrentRegion.Rows.Count」と記述します。[セル値]にはレコード件数を数える範囲の先頭セルを指定します。[セル値]は「”」(ダブルクォーテーション)で囲みます。件数を数えるにはCountプロパティを使用し、CurrentRegion.Rows.Countと記述すると[セル値]で指定したセルを基準に下に向かって空白行が現れるまでレコード件数を数えます。内容を纏めると、「[セル値]で指定したセルから下に向かって空白行が現れるまでレコード件数を数えて下さい。」との意味になります。

[記述例]:

Range("A1").CurrentRegion.Rows.Count

 

使い方

使い方について、具体的に説明していきます。

範囲に空白行が含まれていない場合

範囲に空白行が含まれない場合について説明します。

[記述例]:

※以下の記述例は、VBE(VBA記述画面)に記述しないと実行ができません。VBEの開き方については、VBEの開き方を参考にして下さい。

-------------------------------------------------

Sub サンプル()
   
    Dim 件数 As Integer
   
    件数 = Range("A1").CurrentRegion.Rows.Count
    MsgBox "レコード件数は" & 件数 & "です。"
   
End Sub

-------------------------------------------------

内容は、「A1セルを起点に空白行が現れるまで下に向かってレコード件数を数え、最後にMsgBoxでレコード件数を表示して下さい。」との意味になります。

[実行例]:

(実行前)

※A1セル~D4セルにデータが入力されています。

f:id:m_kbou:20190905082422p:plain

(実行後)

※”レコード件数は4です。”のメッセージを表示します。

f:id:m_kbou:20190905082434p:plain

範囲に空白行が含まれない場合の説明は以上です。

 

範囲に空白行が含まれる場合

範囲に空白行が含まれる場合について説明します。

[記述例]:

※以下の記述例は、VBE(VBA記述画面)に記述しないと実行ができません。VBEの開き方については、VBEの開き方を参考にして下さい。

-------------------------------------------------

Sub サンプル()
   
    Dim 件数 As Integer
   
    件数 = Range("A1").CurrentRegion.Rows.Count
    MsgBox "レコード件数は" & 件数 & "です。"
   
End Sub

-------------------------------------------------

内容は、「A1セルを起点に空白行が現れるまで下に向かってレコード件数を数え、最後にMsgBoxでレコード件数を表示して下さい。」との意味になります。

[実行例]:

(実行前)

※A1セル~D5セルにデータが入力されています。(4行目に空白行があります)

f:id:m_kbou:20190905082453p:plain

(実行後)

※”レコード件数は3です。”のメッセージを表示します。(空白行が含まれている場合は、空白行までのレコード件数を数えます)

f:id:m_kbou:20190905082526p:plain

範囲に空白行が含まれる場合の説明は以上です。

  

おわりに

今回は入力されているレコード件数を数える方法について説明しました。上記の例でも説明した通り、連続したセル範囲のレコード件数を数えます。よって、途中で空白行が含まれている場合、空白行前までのレコード件数を数えますので注意して下さい。