- ベストアンサー
条件一致の複数セルを他の同一セルに表示
お世話になります。 現在、以下の表があります。 N列はRANK関数で別表を元にO列のランキングを表示しています。 N O 1 ランキング 価格帯 2 4 100円台 3 4 1000円台 4 2 2000円台 5 1 3000円台 6 4 4000円台 この表をもとに、ランキング順に並べ替えをした別表を作りたいのですがどうすればよろしいでしょうか?
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
下記例で、データ例をN、O列に置いてないので済みません。置換えて考えてください。 こういう問題で良いのでしょうか。 (データ)A列にランクによる数があるとする。 A列 B列 C列 4 a 3 2 b 2 1 c 1 4 d 4 4 e 5 6 f 6 (関数式1) C1に =IF(COUNTIF($A$1:$A$6,A1)=1,COUNTIF($A$1:$A$6,"<"&A1)+1,COUNTIF($A$1:$A$6,"<"&A1)+COUNTIF($A$1:A1,A1)) と入れて下へ複写する。 $A$6は最下行に修正してください。 (結果1) 上記のC列のようになる。 (関数式2) 空いた列に(例えばF列に) F1に =INDEX($A$1:$B$6,MATCH(ROW(),$C$1:$C$6,0),1) と入れて、下に複写する。 G1に=INDEX($A$1:$B$6,MATCH(ROW(),$C$1:$C$6,0),2) と入れて下に複写する。 (結果2)F1:G6に 1 c 2 b 4 a 4 d 4 e 6 f
その他の回答 (2)
- moon_piyo
- ベストアンサー率60% (88/146)
データが変動し、RANK値が変わったら別表では勝手にソートするようしたい、ということでしょか... 元シートについて、 M2に =N2+ROW()/10000 をいれ M6までコピー L2に =RANK(M2,M$2:M$6,1) をいれ L6までコピー 別のシートに移動して A2に =VLOOKUP(ROW()-1,Sheet1!$L$2:$O$6,3,0)をいれ A6までコピー B2に =VLOOKUP(ROW()-1,Sheet1!$L$2:$O$6,4,0)をいれ B6までコピー (上の式はもとのシート名がSheet1、別表を2行目から始めた場合です。別表を5行目から始めるのでしたら VLOOKUP()の第1パラメータをROW()-4にしてください)
- papayuka
- ベストアンサー率45% (1388/3066)
コピーして、形式を選択して貼り付けでリンク貼り付けして、並び替えるとか。
お礼
お礼が遅れてすみませんでした。 おおっっっ!! というようなご回答、本当にありがとうございました!