【エクセルマクロ】オートフィルタ抽出件数をカウント:簡単解説

エクセルマクロ_オートフィルタ抽出件数を表示_アイキャッチ エクセルマクロで効率化する

エクセルマクロで、オートフィルタの抽出件数をカウントするVBAコードをご紹介します。

このページのマクロコードは、コピペで使えます。
せひ、お試しください。

オートフィルタ抽出件数をカウント

以下のExcelVBAを実行すると、フィルタで絞り込んだ件数を表示します。


Private Sub Worksheet_Calculate()

Dim LastRow As Long

    LastRow = Cells(Rows.Count, 1).End(xlUp).Row

    If Columns(1).SpecialCells(xlCellTypeVisible).Count <> Rows.Count Then
        MsgBox Range(Cells(1, 1), Cells(LastRow, 1)). _
            SpecialCells(xlCellTypeVisible).Count - 1
    End If

End Sub

 

マクロ実行後

オートフィルタで絞った行数をカウントして、メッセージボックスに表示します。


 

オートフィルタを操作するごとにイベントが発動して、抽出データのカウント結果を表示します。


 

すべてのデータを表示したときは、メッセージボックスは表示しません。


 
 

イベントの設定

[Private Sub Worksheet_Calculate()] イベントを使用しているため、

ちょっとした裏ワザ設定が必要です。

シート内に計算式を入力してください。簡単なものでも大丈夫です。

私は下図のように、セルE1に、「=NOW()」という計算式を入力しました。


 

VBEエディタ

オートフィルタの抽出結果をカウントしたいシートに、イベントマクロを設定します。

 
この記事がお役に立てれば幸いです。
 

【エクセルマクロ】オートフィルタ処理を自動化:超便利13選
...