• ベストアンサー

エクセルのデータを抽出後、自動的に並び替え

こんばんは☆ うまく説明できるかわかりませんが、どうぞよろしくお願いします。 ・シート1に以下のデータが入っているとします。    A     B     C 1 番号   データ1  データ2 2        ●     ■ 3        ▲     × 4        ■     ■ 5        ◎     ▲ ・シート1のA列に番号を上から順ではなく、該当するデータ順(例えば処理した順)につけていくと、別シート(例えばシート2)に自動的に順番にデータが表示されるようにしたいのですが、どうすればよいのでしょうか…    A     B     C 1 番号   データ1  データ2 2        ●     ■ 3  2     ▲     × 4        ■     ■ 5  1     ◎     ▲    ↑    該当順に数字を入力したら、シート2に下記のように表示したいのです。    A     B     C 1 番号   データ1  データ2 2  1     ◎     ▲ 3  2     ▲     × 4 5  何卒お力をお貸しください(><)

質問者が選んだベストアンサー

  • ベストアンサー
  • papayuka
  • ベストアンサー率45% (1388/3066)
回答No.1

タイトル行を含んでSheet1のA1から元データがあるとします。 Sheet2のA2に =ROW()-1 Sheet2のB2とC2に =IF(ISERROR(VLOOKUP($A2,Sheet1!$A:$C,COLUMN(),0)),"",VLOOKUP($A2,Sheet1!$A:$C,COLUMN(),0)) これでSheet2のA2:C2を下にコピーで如何でしょう?

ryu-s
質問者

お礼

すごいですっ!!!!めちゃ感動しました!!! 本当に助かりました(^∀^)ありがとうございました! 関数って組み合わせることによって、いろいろなことができるのですね…(^^;

その他の回答 (1)

  • zap35
  • ベストアンサー率44% (1383/3079)
回答No.2

Sheet2のA2セルに =IF(ROW()<=COUNTA(Sheet1!A$1:A$1000),SMALL(Sheet1!A$1:A$1000,ROW()-1),"") A2を下方向にコピー Sheet2のB2セルに =IF(ROW()<=COUNTA(Sheet1!$A$1:$A$1000),INDEX(Sheet1!B$1:B$1000,MATCH(A2,Sheet1!A$1:A$1000,0)),"") を入力し、右、および下方向にコピー ただしSheet1のA列に同じ順位の数字がないことが前提です。 またSheet1の最大行は1000行にしていますから、もっと多いなら1000を大きな数字に変更して下さい

ryu-s
質問者

お礼

zap35様、細かく回答していただき本当にありがとうございました!!!助かりました!(*^^*) 仕事で気軽に頼まれてしまって、困っておりました(><) ありがとうございます♪♪♪