• 締切済み

INDEX関数で値が正しく表示されません

Sheet1のメルマガ配信日とそのクリック数、注文数が書かれている表から、クリック数のランク付けをSheet2に呼び出しています。 数式は下記の通りです。 Sheet2!B2=LARGE((Sheet1!$B$3:$B$7,Sheet1!$D$3:$D$7),A2) Sheet2!C2=INDEX(Sheet1!$A$1:$A$7,LARGE(INDEX(((Sheet1!$B$3:$B$7=B2)+(Sheet1!$D$3:$D$7=B2))*ROW(Sheet1!$A$3:$A$7),),COUNTIF($B$2:$B$6,B2)-COUNTIF($B$2:B2,B2)+1)) ※Sheet2!A:Aはユーザ定義「0"位"」 Sheet2!C2の数式のどこを直せば正しく表示されますでしょうか? 現時点では、下記の"Sheet2"の通りに表示されます。 どなたかよろしくお願いします。 "Sheet1"    A    B     C      D    E 1       リンク1       リンク3 2 配信日   クリック数  注文数  クリック数  注文数 3 20080101   10    5       7     2 4 20080115   15    2       45    15 5 20080201   20    3       20    4 6 20080215   10    4       80    5 7 20080301   12    5       20    7 "Sheet2"   A   B     C 1 順位 クリック数 配信日 2 1位   80  20080215 3 2位   45   20080115 4 3位   20   20080115 5 4位   20   20080301 6 5位   20   #REF!

みんなの回答

noname#235001
noname#235001
回答No.2

解決策が思いつきませんでしたが原因は判りましたので書いておきます 最大の原因はSheet1の5行目でカウント数が同数であるからで、さらに同じカウント数が7行目にもあることです まず5行目に同一カウント数があるため処理がおかしくなり、Sheet2の3位に1行上の4行目の日付、あるいは2位の日付を引っ張ってきてます 次の4位は3位より後の日付として、本来5位として検索されるはずの7行目の日付を引っ張ってきています これでは最後の5位の日付が該当なしとなってしまいエラーが出ている状態です 試しに、Sheet1のB5とD5の値を変更するとエラーは出ません 1行に同一カウント数がある場合はどういう結果を得たいかを考えてみてください 2つとも出すのはかなり難しいと思われますが

noname#204879
noname#204879
回答No.1

》 現時点では、下記の"Sheet2"の通りに表示されます では、1位から 10位まで「正しく表示」された表(貴方が希望するもの)も示してみてください。

miyabi08
質問者

補足

mike_gさま 説明不足で申し訳ありません。 クリック数に該当する配信日を出したいので、 希望の値は下記の通りです。 ※クリック数「20」が同日にあるので、5位は出なくても仕方が無いのですが、3位は、「20080201」か「20080301」になるはずです。 "Sheet2"   A   B     C 1 順位 クリック数 配信日 2 1位   80   20080215 3 2位   45   20080115 4 3位   20   20080201 5 4位   20   20080301 6 5位   20   #REF!