Excelができるとは?

目的別 同順位があっても次の順位を飛ばす事なく表示

目的別

同順位があっても次の順位を飛ばす事なく表示

SUMPRODUCT関数とCOUNTIF関数をつかって、同順位があっても次の順位を飛ばす事なく表示させます。

SUMPRODUCT関数 配列内で対応する要素の積を合計します

COUNTIF関数 検索条件に一致するセルの個数をかえします

 

順位をもとめる時RANK関数を使います。

RANK関数 数値が参照範囲内で何位かかえします

しかし、上記のように同順位があると、次の順位はその同順位分飛ばされて表示されます。

上記の場合、4位が3つあるので、次の順位は7位となってしまいます。

次の順位を7位ではなく、5位から表示させたい場合SUMPRODUCT関数とCOUNTIF関数を使います。

 

=SUMPRODUCT(($C$3:$C$14>=$C3)/COUNTIF($C$3:$C$14,$C$3:$C$14))

 

同順位の後、5位から始まりました。

 

どういった処理がされているか、すこし分解してご説明します。

SUMPRODUCT関数は配列に対応する関数です。

隣の列にSUMPRODUCT関数だけ入力してみます。

=SUMPRODUCT(($C$3:$C$14>=$C3))

赤枠を見て頂くと、TRUE;TRUE;TRUE;TRUE;TRUE;TRUE;・・・・とあります。

セルE6の売上600以上ある場合がTRUEとなり、600以下がFALSEとなります。

 

=SUMPRODUCT(($C$3:$C$14>=$C3)*1)

わかりやすく、配列に×1と入れてみます。

売上600以上は6個と返りました。

 

COUNTIF関数で同じ売上の個数を求めています。

SUMPRODUCT関数でもとめられた答えを、COUNTIF関数で割り算しています。

COUNTIF関数を以下のように入力するのは、配列にしたいからです。

COUNTIF($C$3:$C$14,$C$3:$C$14)

SUMPRODUCT関数の配列 / COUNTIF関数の配列 という事になります。






派遣社員ランキング

Microsoft Officeランキング
にほんブログ村 Windows





 

モバイルバージョンを終了