Excelで特定の値を含む行数をカウントします
Excelワークシートで特定の値を持つセルの数を数えるのは簡単かもしれません。 ただし、特定の値を含む行数を取得するのはかなり複雑になる可能性があります。 この場合、SUM、MMULT、TRANSPOSE、およびCOLUMN関数に基づくより複雑な式が適している場合があります。 このチュートリアルでは、この数式を作成してこのジョブをExcelで処理する方法について説明します。
特定の値を含む行の数を数える
たとえば、ワークシートに値の範囲があり、次に示すスクリーンショットのように、指定された値「300」の行数をカウントする必要があります。
特定の値を含む行数を取得するための一般的な構文は次のとおりです。
{=SUM(–(MMULT(–(data=X),TRANSPOSE(COLUMN(data)))>0))}
Array formula, should press Ctrl + Shift + Enter keys together.
Array formula, should press Ctrl + Shift + Enter keys together.
- data:特定の値が含まれているかどうかを確認するセルの範囲。
- X:行のカウントに使用する特定の値。
1。 結果を入力する空白のセルに、次の数式を入力またはコピーしてください。
=SUM(--(MMULT(--($A$2:$C$12=300),TRANSPOSE(COLUMN($A$2:$C$12)))>0))
2。 次に、 Ctrl + Shift + Enter 正しい結果を得るために一緒にキーを押します。スクリーンショットを参照してください。
式の説明:
=SUM(--(MMULT(--($A$2:$C$12=300),TRANSPOSE(COLUMN($A$2:$C$12)))>0))
- -$ A $ 2:$ C $ 12 = 300:この式は、値「300」が範囲A2:C12に存在するかどうかをチェックし、TRUEおよびFalse配列の結果を生成します。 二重否定記号は、TRUEを1に変換し、FALSEを0に変換するために使用されます。 したがって、次のような結果が得られます:{0,0,0; 1,0,0; 0,0,0; 0,1,1; 0,0,0; 0,1,0; 0,0,0 、1,0,0; 0,0,1; 0,0,0; 1,1,1; 11}。 3行1列で構成される配列は、MMULT関数のarrayXNUMXとして機能します。
- TRANSPOSE(COLUMN($ A $ 2:$ C $ 12)):ここでのCOLUMN関数は、範囲A2:C12の列番号を取得するために使用され、次のような3列の配列を返します:{1,2,3}。 次に、TRANSPOSE関数は、この配列を3行の配列{1; 2; 3}に交換し、MMULT関数内でarray2として機能します。
- MMULT(-($ A $ 2:$ C $ 12 = "Joanna")、TRANSPOSE(COLUMN($ A $ 2:$ C $ 12))):このMMULT関数は、上記の0つの配列の行列積を返します。結果は、{1; 0; 5; 0; 2; 0; 1; 3; 0; 6; XNUMX}になります。
- SUM(--(MMULT(--($A$2:$C$12="Joanna"),TRANSPOSE(COLUMN($A$2:$C$12)))>0))= SUM(--{0;1;0;5;0;2;0;1;3;0;6}>0):最初に、0より大きい配列の値を確認します。:値が0より大きい場合、TRUEが表示されます。 0未満の場合、FALSEが表示されます。 次に、二重否定記号により、TRUEとFALSEが1と0になるため、SUM({0; 1; 0; 1; 0; 1; 0; 1; 1; 0; 1})が得られます。 最後に、SUM関数は配列内の値を合計して、結果を返します:6。
ヒント:
ワークシートの特定のテキストを含む行数を数える必要がある場合は、以下の式を適用して、忘れずに Ctrl + Shift + Enter 合計数を取得するために一緒にキー:
=SUM(--(MMULT(--(ISNUMBER(SEARCH("Joanna",A2:C12))),TRANSPOSE(COLUMN($A$2:$C$12)))>0))
使用される相対関数:
- 和:
- Excel SUM関数は、指定された値の合計を返します。
- MMULT:
- Excel MMULT関数は、XNUMXつの配列の行列積を返します。
- 転置:
- TRANSPOSE関数は、特定の範囲のセルに基づいて、新しい方向の配列を返します。
- カラム:
- COLUMN関数は、数式が表示される列の番号を返すか、指定された参照の列番号を返します。
その他の記事:
- 内部基準を満たしている場合は行をカウントする
- 今年と昨年の製品売上高のレポートがあり、今、今年の売上高が昨年より多い、または今年の売上高が昨年より少ない製品を以下のように数える必要がある場合があります。示されているスクリーンショット。 通常、XNUMX年間の売上差を計算するためのヘルパー列を追加し、COUNTIFを使用して結果を取得できます。 ただし、この記事では、ヘルパー列を使用せずに直接結果を取得するSUMPRODUCT関数を紹介します。
- 複数の基準を満たす場合は行をカウントする
- 複数の基準に基づいて範囲内の行数をカウントします。その一部は行レベルで機能する論理テストに依存します。ExcelのSUMPRODUCT関数を使用すると便利な場合があります。
- セルのカウント数が多くの値のXNUMXつに等しい
- 列Aに製品のリストがあるとすると、次のスクリーンショットに示すように、列Aから範囲C4:C6にリストされているApple、Grape、Lemonの特定の製品の総数を取得したいとします。 通常、Excelでは、単純なCOUNTIF関数とCOUNTIFS関数はこのシナリオでは機能しません。 この記事では、SUMPRODUCT関数とCOUNTIF関数を組み合わせてこのジョブをすばやく簡単に解決する方法について説明します。
最高のオフィス生産性ツール
Kutools forExcel-群衆から目立つのに役立ちます
毎日の仕事を迅速かつ完璧に完了させたいですか? Kutools for Excel は、300 の強力な高度な機能 (ワークブックの結合、色による合計、セルの内容の分割、日付の変換など) を提供し、80% の時間を節約します。
- 1500 の作業シナリオ用に設計されており、80% の Excel の問題を解決するのに役立ちます。
- 毎日何千ものキーボードとマウスのクリックを減らし、疲れた目と手を和らげます。
- 3分でExcelのエキスパートになります。 面倒な数式やVBAコードを覚えておく必要はもうありません。
- 30日間無制限の無料トライアル。 60日間の返金保証。 2年間の無料アップグレードとサポート。

Officeタブ-MicrosoftOffice(Excelを含む)でタブ付きの読み取りと編集を有効にする
- 数十の開いているドキュメントを切り替えるのにXNUMX秒!
- マウスの手に別れを告げて、毎日何百ものマウスクリックを減らしてください。
- 複数のドキュメントを表示および編集する際の生産性が 50% 向上します。
- Chrome、Firefox、新しいInternet Explorerと同じように、効率的なタブをOffice(Excelを含む)にもたらします。
