- ベストアンサー
前月のランキングの抽出をしたい
Excelで例えば以下のようなシートがあり9月のC2に前月のランキングを抽出したい場合、どのような関数を使えばよろしいでしょうか?ちなみに情報番号はユニークです。 sheet9月 A B C ランク 情報番号 前月のランキング 1 145 2 212 3 5553 4 4669 sheet8月 A B ランク 情報番号 1 5553 2 145 3 354 4 2730
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
No.1です。 ごめんなさい。間違えてしまいました。 正しくは、 セルC1=前月のランキングとして、 sheet9月のセルC2 =INDEX(sheet8月!A2:A5,MATCH(B2,sheet8月!B2:B5),1) です。
その他の回答 (2)
- imogasi
- ベストアンサー率27% (4737/17069)
(データ)Sheet5のA1:B5 ランク 情報番号 1 5553 2 145 3 354 4 2730 Sheet6のA1:B5とC1:C5(関数の結果) ランク 情報番号 前月のランキング 1 145 2 2 212 ランク外 3 5553 1 4 4669 ランク外 (関数式) C2に=IF(ISERROR(MATCH(B2,Sheet5!$B$2:$B$5,0)),"ランク外",MATCH(B2,Sheet5!$B$2:$B$5,0)) といれ、C3:C5に式を複写する。 Sheet5!$B$2:$B$5の$B$5は最下行に修正すること。 (結果) 上記のC列の通り。 Sheet5は順位の順に並んでいるものとしている。
お礼
なるほど、これはパーフェクトですね。エラーをランク外にしてしまうわけですね。ありがとうございます。
- Admiral
- ベストアンサー率19% (65/330)
sheet9月のセルC1 =INDEX(A:A,MATCH(B1,sheet8月!B:B),1) でどうでしょうか。 MATCH(検索値,検索範囲) で検索範囲内で検索値に一致するセルの行番号を返します。 INDEX(範囲,行番号,列番号) で指定するセルの値を返します。
お礼
ありがとうございます。簡潔でよく理解できました。
お礼
ありがとうございます。下記の説明で大筋理屈が分かりましたので、その後、試行錯誤の末、上記と同じ結果になりました。