エクセルで順位付けをするときに使う関数として、RANK関数というものがあります。
しかし、もしRANK関数が使えない状況になったら・・・?
(いや、そんなことはないんですけどね(笑))
ということで、このページでは、RANK関数の代わりとなる関数をご紹介したいと思います。
スグにためセル! – ここを読めばすぐ使える
RANK関数はCOUNTIF関数で代用ができます。
【大きい順に順位を出す場合】
=COUNTIF(全体の範囲 , “>”&順位を調べたい数値)+1
【小さい順に順位を出す場合】
=COUNTIF(全体の範囲 , “<”&順位を調べたい数値)+1
※ より詳しい解説はここから下に続きます。
こんなときにためセル!
そもそもRANK関数があるのに、なぜ、別の関数で順位を求めなければいけないのでしょうか。
それは、RANK関数では求めることができない順位があるからです。
例えば次のような表があったとします。

この表には「所属内順位」という項目があります。これは、例えば、「中部支社」の中だけで順位を出したり、「本社」だけで順位を出したいということですが、所属内順位はどうやって出したらいいでしょうか。
しかし、RANK関数では、このように条件が付いた順位を求めることはできないのです。
そこで、今回は上のページを読む前に基礎知識としてRANK関数の代わりになる関数について解説します。
RANK関数の意味を考えてみる
RANK関数は何をする関数かというと、指定した範囲の中での順位をつけてくれる関数です。
順位は、順位を知りたい数値より大きい数値(または小さい数値)が何個あるかを数えて、出てきた個数に1を加えれば求めることができます。

順位を知りたい数値より大きい数値(小さい数値)の個数を数えればいいということは、あの関数が使えそうですね!
・・・
そう!COUNTIF関数です!
COUNTIF関数がRANK関数の代わりになる!?
COUNTIF関数で順位を数えるには次のように入力します。
【大きい順に順位を出す場合】
=COUNTIF(全体の範囲 , “>”&順位を調べたい数値)+1
【小さい順に順位を出す場合】
=COUNTIF(全体の範囲 , “<”&順位を調べたい数値)+1
COUNTIF関数で、ある数値より大きい数値を数えたいときは、その数値の前に「”>”&」をつければ数えることができます。逆に小さい数値を数えたいときは「”<“&」をつけます。
先ほどの考え方で行けば、これで順位を求めることができそうですが、本当にRANK関数の代わりになるのか、実際にタメしてみましょう。
下図のようにサンプルデータを用意しました。

まずは、C列にRANK関数で計算した順位を出してみます。

それぞれの順位が出ましたね。
それでは、D列にはCOUNTIF関数を使って順位を出してみましょう。

見事にRANK関数で出した順位と一致していますね!

特に、りんごとなしの値段が同じ数値になっていますが、COUNTIF関数を使った場合でもきちんと「4」という順位が返っています。

また、同点の次の順位は「5」ではなく、ちゃんと「6」になっています。

つまり、同点を含む場合でもCOUNTIF関数で大丈夫ということです。
まとめ
これまで見てきたように、RANK関数はCOUNTIF関数で代用することができます。
でも、わざわざCOUNTIF関数を使う理由がわかりませんよね。
通常は使わないかもしれませんが、COUNTIF関数でも順位を求めることができるという知識があれば、最初に紹介したような条件付きの順位を求めたりと、応用した使い方が見つかるかもしれません。
ここまで解説したように、ためセル!でご紹介しているエクセルのテクニックを使いこなせば、面倒な作業を減らし、サクッと定時で帰れるようになります。
しかし、仕事が早くなることで「毎月の残業代が減ってしまい、自由に使えるお金が減った」という思わぬ悩みを抱える方も少なくありません。
定時退社で生まれた「ゆとり時間」を、ただ何となく過ごすか、それとも減った残業代以上を稼ぐ「副収入の柱」を育てる時間にするかで、今後の生活の余裕は大きく変わってきます。
空いた時間を活用して、初心者からでも手堅く副収入を作る具体的な方法については、初心者向けのおすすめ副業・投資の始め方で詳しく解説しています。
以上、このページでは、RANK関数はCOUNTIF関数で代用できる!ということをご紹介しました。
.png)




