質問: エクセルrank関数の同率順位を別表に抽出する時 お世話になります。 エクセル2003を利用しています。初心者なので教えていただきたく存じます。 以下文面のようにランキング表を作りました。 rank関数を利用してランキングを出し、順位表にtop5(重複していても)まで出したいと思っています。 a列にa店~z店までの名前(a店という名前は仮です)が入っており、 b列に上から結果数字がランダムに入力がされており、 c列にrank関数を使って順位がその結果の横に数字として反映されています。 b列の順位の数字が大体1~20程度までの数字が記入されており、c列のrank関数の結果が当然ですが重複して順位が表示されている状態です。 別表を作成して1~5位のランキング表を作り、a列に入っている店名とを表示させたいと思っております。 1位と2位は単独であったので店名はindexとmatch関数を使ってきれいに抽出できたのですが、 3位以下は重複しているようで#n/aと表示されてしまいます。 表示の仕方として「あいうえお順(a~zの若い順)」で表示できればと思っております。 無知で恐縮なのですが、情報不足の点等あればご指摘いただきたく存じます。 お詳しい方、ご教授宜しくお願い致します。
回答: たとえばa1からa26に「重複していない」店名を記入 b1:b26に数字を記入 b列が一番大きいと1位という風に大きい方から順位を付けているとして c1に =countif(b:b,">"&b1)+sumproduct(($a$1:$a$26