Excelのフィルタリング機能により、データテーブルから必要な情報だけを簡単に表示できます。フィルタリングの使用方法については、_ExcelTips._の他の号で説明されています。データにフィルターを適用したら、関数を使用して、フィルターされた範囲に表示されるセルの数を表示できます。

カウントをすばやく知る必要がある場合は、フィルタリングされた範囲を強調表示し、ステータスバーの任意の場所を右クリックして、表示されるコンテキストメニューから[カウント]を選択します。 Excelは、ステータスバーに、選択した範囲に表示されているセルの数を表示します。

数式で使用できるソリューションが必要な場合は、SUBTOTAL関数を検討する必要があります。この関数は、さまざまな「小計」の結果を提供しますが、表示されているデータに対してのみ機能します。これは、オートフィルターによってフィルターで除外された情報が、SUBTOTALが返すものにカウントされないことを意味します。

SUBTOTAL関数の一般的な構文は次のとおりです。

=SUBTOTAL(type,range)

_type_と_range_を指定するだけです。範囲部分は簡単でなければなりません。それは単なる標準範囲です。 _type_指定子は、次のように1から11までの数値にすることができます。

Type

Function Performed

1

AVERAGE

2

COUNT

3

COUNTA

4

MAX

5

MIN

6

PRODUCT

7

STDEV

8

STDEVP

9

SUM

10

VAR

11

VARP

使用する_type_指定子は、表示される結果に適用されるExcel関数を示していることに注意してください。したがって、F3:F27の範囲でフィルター処理された結果の数を決定する場合は、次のように_type_指定子2を使用します。

=SUBTOTAL(2,F3:F27)

もちろん、この使用法では、指定された範囲の数値がカウントされます。

テキスト値をカウントする場合は、Excelが代わりにCOUNTA関数に依存するように、3の_type_指定子を使用する必要があります。

また、101から111の範囲の_type_指定子を使用できることも知っておく必要があります。これらは上記の指定子と同じですが、100個しか追加されていません。違いは、値1から11はすべてのセルで機能するのに対し、値101から111は非表示でないセルでのみ機能することです。この2次範囲の指定子は、Excel 2003でサポートされていますが、以前のバージョンのExcelでもサポートされている場合があります。 (見つけるための最良の方法は?それらを試して、関数がクラッシュするかどうかを確認してください。)

マクロベースのソリューションを好むタイプの方は、マイクロソフトサポート技術情報の記事213330を参照して詳細を確認することをお勧めします。

http://support.microsoft.com/kb/213330

_ExcelTips_は、費用効果の高いMicrosoftExcelトレーニングのソースです。

このヒント(1955)は、Microsoft Excel 97、2000、2002、および2003に適用されます。Excel(Excel 2007以降)のリボンインターフェイス用のこのヒントのバージョンは、次の場所にあります。