Excel でフィルターをかける際に、最下行の集計行を除外する方法は?
Excel で日常的なデータ処理を行う際、合計・平均・件数などの重要な集計値を要約するために、データセットの最下部に集計行を設けるのが一般的です。しかし、Excel のフィルター機能を使うと、集計行も通常のデータと同様にフィルターの対象となり、フィルター適用時に非表示になってしまうことがあります。特にサマリーレポートや財務諸表、継続的なデータ分析など多くのケースでは、ワークシートの他の部分にフィルターをかけても、集計行が常にデータの最下部に表示され続ける必要があります。以下のスクリーンショットのとおりです。
本記事では、フィルターを適用している間も常に最下部の集計行を表示させるための実用的な方法をいくつかご紹介します。それぞれの方法は、異なる使用シーンやユーザーの好みに合わせてお選びいただけます。Excel の組み込み機能に加え、数式を活用したアプローチや VBA によるプログラム的ソリューションも網羅し、あなたのニーズにぴったりの選択肢をご提供します。

➤ テーブルを作成して、フィルター時に最下部の集計行を除外する
➤ 数式を挿入して、フィルター時に最下部の集計行を除外する
➤ VBA コードを使用して、フィルター時に最下部の集計行を除外する
テーブルを作成して、フィルター時に最下部の集計行を除外する
フィルターをかけても集計行を常に表示させる最も簡単な方法は、データを正式なExcel テーブルに変換することです。Excel テーブルにはネイティブの集計行機能が備わっており、フィルター適用後もデータの最下部に賢く表示され続けます。この方法の詳しい手順やよくある活用シーン、注意点を以下にご紹介します。
1。データにすでに手動で計算された集計行(テーブルに組み込まれていない集計数式を含む行)が含まれている場合は、重複を防ぐため、一時的にこの行を削除してください。
2。実際のデータ範囲(手動で作成した集計行を除く)を選択し、次に挿入 > テーブルをクリックします。テーブルの作成ダイアログボックスで、データに列見出しが含まれている場合は先頭行は見出しですにチェックを入れてください。データ範囲をよく確認し、すべての行が正しく含まれていることをご確認ください。

3。「OK」をクリックすると、データがExcel テーブルとして書式設定されます。テーブルが選択されている状態で、デザインタブ(一部のバージョンでは)テーブルデザイン)に移動し、テーブルスタイルのオプショングループにある集計行チェックボックスをオンにします。すると、Excel が自動的に最下部に新しい集計行を追加します。

4。これで、任意の列のフィルターアイコンを使って、必要なデータを自由に絞り込めます。集計行は、適用したフィルターに関係なく、常にテーブルの最下行として表示されます。

適用可能なシーン:この方法は、頻繁に更新されるデータセットやチーム間で共有されるデータ、定期レポートなどに特に効果的です。ストライプ行、構造化参照、自動書式設定といったテーブルの組み込み機能を活用したい場合に最適です。
メリット:
- Excel の組み込み機能とのシームレスな統合
- データ範囲が拡大または縮小しても、数式を更新する必要はありません
- 集計行は動的で、自動的に更新されます
制限事項:
- カスタム数式はテーブルに変換後に再設定する必要があります
- リアルタイムの書式設定により、大規模なデータセットではわずかなパフォーマンスの低下が生じる場合があります
- テーブルに変換する前に、手動で作成した集計行を必ず削除してください。削除しないと、集計が重複して表示される恐れがあります。
- テーブル構造を一貫性のあるものにするため、データを追加または削除する前にフィルターをクリアしてください。

KUTOOLS AI でExcel の魔法を解き放ちましょう
- スマート実行:セル操作、データ分析、チャート作成をすべてシンプルなコマンドで実現します。
- カスタム数式:ワークフローの効率化に役立つ、あなただけのカスタマイズ数式を生成します。
- VBA コーディング:VBA コードを簡単に記述・実装できます。
- 数式の解釈:複雑な数式が簡単に理解できます。
- テキスト翻訳:スプレッドシート内で言語の壁を乗り越えましょう!
数式を挿入して、フィルター時に最下部の集計行を除外する
Excel テーブルを使いたくない場合は、SUBTOTAL 関数を活用して、データの最下部に手動の集計行を簡単に維持できます。SUBTOTAL 関数は、Excel のフィルターと連携して動的に動作するよう特別に設計されており、計算結果は表示中の行(フィルターで抽出された行)のみを反映します。しかも、数式自体はフィルター時に非表示になったり除外されたりすることはありません。この方法なら柔軟性が高く、従来のセル範囲ともしっかり連携します。
1。集計行の最初のセル(データテーブルの直下)に、次の数式を入力してください(例:値が B 列の2 行目から13 行目にある場合):
=SUBTOTAL(9, B2:B13) 数式中のB2:B13は、実際のデータに対応する列および行の範囲に置き換えてください。数式中の数字 9は SUM 関数を指定しますが、必要に応じて他の関数番号もご利用いただけます(例:1は AVERAGE、2は COUNT など)。

2。「Enter」キーを押して確定すると、集計行にすぐに表示中の行(フィルターされていない行)に基づく合計が反映されます。Excel の組み込みフィルターボタンでフィルターをかけると、集計行は最下部に固定され、常に表示中の行の現在の小計を自動的に示します。
SUBTOTAL 数式内の範囲を調整してください。この数式は、OFFSETやINDEXなどの動的範囲関数を使用しない限り、自動的に拡張されません。概要:SUBTOTAL 関数は、AVERAGE や COUNT などさまざまな集計方法をサポートしており、財務・在庫管理・レポート作成など多彩なワークフローで活用できる高い柔軟性を備えています。
VBA コードを使用して、フィルター時に最下部の集計行を除外する
大規模なデータセットを扱うユーザー、またはフィルターの設定にかかわらず常に最下部の集計行を表示したいユーザーは、VBA(Visual Basic for Applications)を使ってフィルター処理をプログラムで管理できます。このソリューションは、データ範囲や集計行の位置が動的に変わるワークブックや、すべてのユーザーに対して一貫性を確保したい場合に特に効果的です。
この VBA の例では、最後の行を選択するをデータ範囲内で確認し、フィルターを適用した後でも常に表示されるように強制します。これにより合計行が常に表示され、マクロをボタンに割り当てることで再利用できます。
この VBA ソリューションの使用手順:
1。Excel で開発タブに移動します。このタブが表示されていない場合は、Excel のオプションにある「リボンのカスタマイズ」セクションで「開発」をチェックして有効にしてください。
2。VBA エディターを開くには、「Visual Basic」をクリックします。新しく開いたウィンドウで、挿入 > 標準モジュールをクリックし、次のコードを新しいモジュールに貼り付けてください。
Sub AlwaysShowTotalRow()
Dim ws As Worksheet
Dim lastRow As Long
On Error Resume Next
Set ws = ActiveSheet
' Get last used row in column A
lastRow = ws.Cells(ws.Rows.Count, 1).End(xlUp).Row
' Ensure total row is visible before applying filter
ws.Rows(lastRow).Hidden = False
' If filtering is active, reapply filter
If ws.FilterMode Then
ws.ShowAllData
End If
' Make sure total row remains visible
ws.Rows(lastRow).Hidden = False
End Sub 3。コードを入力したら、VBA エディターを閉じてください。Excel でAlt + F8を押し、AlwaysShowTotalRowを選択して実行をクリックすると、マクロによりフィルター適用後でも集計行(最後の行)が確実に表示されるようになります。
・マクロは、合計行が列 A の最後の使用行であることを前提としています。データに空白行や複数の集計が含まれる場合は、ロジックを調整してください。
・データが頻繁に変更される場合は、このマクロをボタンに割り当てて簡単に再利用できるようにすることを検討してください。
・ワークブック内に複数のセクションが含まれる場合は、名前付き範囲または列を指定マーカーを使用して、正しい合計行をより確実に特定してください。
メリット:ユーザーの操作やフィルター設定にかかわらず、集計行を自動で表示できます。ダッシュボードやレポート、共有ワークブックに最適です!
制限事項:マクロを有効にしたワークブックと、適切なマクロ許可が必要です。より複雑なシート構成の場合は、カスタマイズが必要になる場合があります。
概要:この VBA アプローチは、集計行の手動管理が信頼できなかったり、不便だったりする自動化環境に最適です。あらゆる使用ケースでサマリーデータの表示を確実に維持するのに役立ちます。
最高の Office 業務効率化ツール
| 🤖 | KUTOOLS AI アシスタント:次に基づいてデータ分析を革新します:インテリジェント実行 | コード生成| カスタム数式作成 | データ分析とチャート生成| 拡張機能呼び出し… |
| 人気の機能:検索・ハイライト、または重複をマーキング | 空白行を削除する | データを失うことなく列の結合またはセルを | 数式を使用しない四捨五入... | |
| スーパー LOOKUP:複数条件 VLookup | 複数値 VLookup | 複数シート間 VLookup | ファジーマッチ.... | |
| 高度なドロップダウンリスト:ドロップダウンリストをすばやく作成 | 連動型ドロップダウンリスト | 複数選択可能なドロップダウンリスト.... | |
| 列マネージャー:指定した数の列を追加|列の移動|非表示列の表示状態を切り替え|範囲および列の比較... | |
| 注目の機能:グリッドフォーカス | デザインビュー |強化された数式バー | ワークブックとシートマネージャー | リソースライブラリ(オートテキスト)| 日付ピッカー | ワークシートの統合 | 暗号化/セルの復号化 | リストからメール送信 | スーパーフィルター | 特殊フィルタ(太字のフォントを持つセルをフィルタリング/斜体/取り消し線。。。) 。。。 | |
| トップ15 ツールセット:12 テキストツール(テキストの追加、特定の文字を削除、...)| 50+チャートタイプ(ガントチャート、...)| 40+実用的関数(誕生日に基づいて年齢を計算します、...)| 19 挿入ツール(QR コードを挿入、パスから画像を挿入、...)| 12 変換ツール(単語に変換する、為替レートの変換、...)| 7 結合と分割ツール(高度な行のマージ、セルの分割、...)|さらに多数 |
Kutools for Excel でExcel スキルを強化し、これまでにない効率を体験しましょう。Kutools for Excel は、生産性を高め、時間を大幅に節約できる高度な機能を300 以上提供します。最も必要な機能を今すぐ入手するにはこちらをクリック。。。
Office Tab は Office にタブインターフェースをもたらし、作業を大幅に簡単にします
- Word、Excel、PowerPoint でタブを使った編集と閲覧を有効にします。Publisher、Access、Visio、Project でもご利用いただけます。
- 複数のドキュメントを、新しいウィンドウではなく、同じウィンドウ内の新しいタブで開いたり作成したりできます。
- 日々の生産性を50%も向上させ、毎日数百回ものマウスクリックを削減します!
すべてのKutools アドインが、たった1 つのインストーラーで完結。
Kutools for Officeスイートには、Excel ・Word ・Outlook ・PowerPoint 用のアドインと Office Tab Pro が含まれており、複数の Office アプリを横断して作業するチームに最適です。
- オールインワンスイート— Excel、Word、Outlook、PowerPoint 用アドイン+Office Tab Pro
- インストーラー1 つ、ライセンス1 つ— 数分でセットアップ可能(MSI 対応)
- 連携してさらにパワーアップ— Office アプリ全体で生産性が向上
- 30 日間のフル機能トライアル— 登録不要、クレジットカード不要
- 最高のお得感— 個別アドイン購入よりお得