MS Excel COUNTIFで範囲を使用する方法

MS Excel COUNTIFで範囲を使用する方法

数値の列が 2 つあります (列 A と列 B)。A > B となる行の合計数を取得したいと思います。COUNTIF 関数は正しいようですが、2 番目の引数で範囲を使用する方法がわかりません。例:

=COUNTIF(A1:A35, A1>B1.....A35>B35)

答え1

これに使用してくださいsumproduct。試してみてください=SumProduct((A1:A35 > B1:B35)*1)

編集して追加:sumproductセルの範囲に対して一連のテストを連結できます。各テストは または または 、つまり または を返しますTRUEFALSEこれら10条件は、それぞれをテストするときに掛け合わされ、各行の結果は または1を生成します0。範囲内のすべての行に対してこれを実行し (範囲はすべてsumproduct同じ長さである必要があります)、結果の合計を計算します。

上記sumproductには という条件が 1 つだけありますA1:A35>B1:B35。 は、結果を数値として返すように*1指示するだけです。行条件が返された場合は になり、そうでない場合は になります。これらの結果は、範囲内の 35 行すべてについて加算され、条件が true である行の数である合計が算出されます。sumproductTRUE1*10*1

覚えるのはややこしいですが、エクセル関数としては非常に強力で、複数の条件を実行できるのが強みです。たとえば、より大きいA1:A35>B1:B35場合のみを数えたい場合は、次のように記述できます。B1:B3510=sumproduct((A1:A35>B1:B35)*(B1:B35>10)*1)

答え2

基準に基づいて行をカウントします。

Excel では、「条件付き合計ウィザード」を使用するか、同様のスタイルで独自のウィザードを作成することができます。私は前者をお勧めします :-)

一方、=SUM(IF(A1:A35<B1:B35,1,0))セルにCTRL+ SHIFT+と入力するENTER
と、機能します ;-) -- ここで、「3D 数式」について読む必要があります。

COUNTIF()ただし、一度に 1 つのセルに対してのみ機能します。そのため、必要な機能は提供されません。

関連情報