こんにちはゲストさん。会員登録(無料)して質問・回答してみよう!

解決済みの質問

【初心者】excel2007 特定のデータだけ別シートに移動したい

相談させてください。
エクセル2007で特定の情報だけ別シートに移動させる方法はあるでしょうか??
-------------------------------------------------------------
<例>Sheet1
かばんA  ○○○  9/1   
かばんB  *******  9/1 
ノートA  ×××  9/2 
ノートB  ○○○  9/3 
かばんB  ○○○  9/4 
かばんA  ××× 9/5 

例えば、、、
「かばんA」「かばんB」のデータだけSheet2へ
「ノートA」「ノートB」のデータだけsheet3へ
-------------------------------------------------------------
ちなみに「かばん」「ノート」の行は入力規則を使用し、プルダウンになっています。
さらにSheet1の情報をSheey2 Sheet3などに移動させたいのですが、Sheet1にも「全体の情報」という意味でデータを残しておきたいのです。

データは日付がきちんと順番になるようにしたいのです。

思いつくのは。ソートをかけてから、コピペで移動しか思いつきません。
でも量が膨大すぎて・・・。
なにかうまくデータを抽出できないでしょうか??

よろしくおねがいいたします。

投稿日時 - 2009-09-07 00:00:27

QNo.5268930

すぐに回答ほしいです

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

次のようにしてはどうでしょう。
シート1の2行目からデータがあり、A列にはかばんAなどのデータが、B列には、・・・、C列には日付があるとします。他にE列まで使用されているものとします。
作業列として例えばシート2に表示させるためにF1セルには「かばん」と入力します。
F2セルには次の式を入力します。
=IF($A2="","",IF(ISNUMBER(FIND(F$1,$A:$A)),$C2+COUNT(F$1:F1)*0.0001,""))
G2セルには次の式を入力します。
=IF(F2="","",RANK(F2,F:F,1))
シート3に表示させるためにH1セルには「ノート」と入力します。
H2セルには次の式を入力します。
=IF($A2="","",IF(ISNUMBER(FIND(H$1,$A:$A)),$C2+COUNT(H$1:H1)*0.0001,""))
I2セルには次の式を入力します。
=IF(H2="","",RANK(H2,H:H,1))
F2からI2セルまでを範囲として選んで下方にオートフィルドラッグします。
シート2ではA2セルに次の式を入力して右横方向にオートフィルドラッグしたのちに下方にもオートフィルドラッグします。
=IF(OR(COUNTIF(Sheet1!$G:$G,ROW(A1))=0,COLUMN(A1)>5),"",INDEX(Sheet1!$A:$E,MATCH(ROW(A1),Sheet1!$G:$G,0),COLUMN(A1)))
なお、C列を選択してセルの書式設定から表示形式で日付を設定します。
これでシート2にはかばん関係のデータが日付の古い順から下に表示されます。
シート3については次の式を入力して上と同様にすればよいでしょう。
=IF(OR(COUNTIF(Sheet1!$I:$I,ROW(A1))=0,COLUMN(A1)>5),"",INDEX(Sheet1!$A:$E,MATCH(ROW(A1),Sheet1!$I:$I,0),COLUMN(A1)))
なお、シート1の元のデータでは日付を昇順にするなどの操作は全く必要ありません。

投稿日時 - 2009-09-07 08:40:02

このQ&Aは役に立ちましたか?

4人が「このQ&Aが役に立った」と投票しています

回答(2)

ANo.1

フィルタオプションが使えます。
http://allabout.co.jp/gm/gc/3501/2/

投稿日時 - 2009-09-07 07:51:43

あなたにオススメの質問