• 締切済み

条件にあったデータの抽出(別のシートに)

KURUMITOの回答

  • KURUMITO
  • ベストアンサー率42% (1835/4283)
回答No.4

例えばシート1がまとめのシートでシート2、シート3、…にデータが入力されているとします。 すべてのシートは同じ項目が並んでおり、シート2以降のシートではA1セルにyear,B1セルにitem,C1セルにprice,D1セルにregionの項目名が有り、各データが下方に入力されているとします。 シート2以降についてはそれらのシートのシート名をCtrlキーを押しながらクリックして同じ作業グループにします。 その上で作業列としてシート2のE2セルには次の式を入力して下方にドラッグコピーします。 =IF(INDEX(A:D,ROW(),MATCH(Sheet1!$A$1,A$1:D$1,0))&"/"&INDEX(A:D,ROW(),MATCH(Sheet1!$B$1,A$1:D$1,0))=Sheet1!$A$2&"/"&Sheet1!$B$2,MAX(E$1:E1)+1,"") 上記の式はシート1での抽出の条件を設定することで有効に作動します。 そこでシート1を選択して次の作業を進めます。 A1セルには抽出したい項目名を例えばitemと入力し、B1セルには抽出したい項目名を例えばregionのように入力します。 A2セルにはA1の項目で抽出したい数値、例えば45と入力します。B2セルも同様で例えば1と入力します。 3行目には使うシート名を入力するのですがA3セルは空白のままで、B3セルにはSheet2、C3セルにはSheet3、D3セルにはSheet4・・・・・のように横に入力していきます。 4行目は各シートでの該当する行の数を表示させうためにA4セルには0と入力します。B4セルには次の式を入力して横方向にドラッグコピーします。 =IF(B3="","",MAX(INDIRECT(B3&"!E:E"))) 5行目には該当する行の総数を表示させるためにA5セルには0と入力します。B5セルには次の式を入力して横方向にドラッグコピーします。 =IF(B4="","",A5+B4) A7セルからD7セルにはシート2と同じ項目名を並べます。 A8セルには次の式を入力して横方向にドラッグコピーしたのちに下方向にもドラッグコピーします。 =IF(OR(ROW(A1)>MAX($5:$5),A$7=""),"",INDEX(INDIRECT(INDEX($3:$3,MATCH(ROW(A1)-0.1,$5:$5,1)+1)&"!A:D"),MATCH(ROW(A1)-INDEX($5:$5,MATCH(ROW(A1)-0.1,$5:$5,1)),INDIRECT(INDEX($3:$3,MATCH(ROW(A1)-0.1,$5:$5,1)+1)&"!E:E"),0),COLUMN(A1))) これですべてのシートについて、1行目位で指定した項目と2行目で指定した数値についての該当する行が表示されますね。

関連するQ&A

  • 条件に一致する行データを別シートに抽出する

    日付別の各データが入力された総括のシートがあり「0」とします。 別に13個の項目別シートを固定の様式で作ってあります。「1~13」とします。 シート「0」のB2~B30までセル上に入力するデータが1~13の整数として入力する訳ですが、その入力されたデータセルの中で該当する数字を条件として抽出し目的のシートの決められた座標から順に行を開けずに表示したいのです。 例えばシート「0」のB列に6という数字が入力されていたら同じ行A、C、Dのデータを全てシート「6」のA、B、Cに表示させたいのです。 同じように他の数字も該当するシートに該当する数字の全てを表示したいのです できるだけ判り易く教えてくださいお願いします。

  • 【エクセル】条件に合うものを別シートに抽出

    1、シート1(BC入力)で、ロット番号をバーコード読取りする。 2、そのロット番号に「検査」、「規制」のデータがあるかどうか(●は有)を、シート2~4から参照し、  シート1に表示させる。 画像はシート2(生鮮食品)です。シート3、4も同様のつくりとなっています。 シート1はバーコードで読取ったロット番号、およびそれに対応した「検査」、「規制」を表示させるシートです。 【シート1略図】  検査   ロット番号   規制  ●      4A119     ●         4B1018     ●  ●      4C267     ●            ・            ・            ・ 複数のシートにあるデータベースから、別の1つのシートに条件付きでデータを抽出する方法が わからないでいます。 よろしければ皆様のお知恵を拝借させてください!!

  • 2つの条件からシート2に抽出

    シート1 A1は手入力D4手入力、H2は=D2&C2 担当者と週で検索して抽出する式を教えて下さい。何度もすみません。 上手く出来なくて1行しか抽出しないんです。 上記の表から1週目だったら、1週目の担当者のデータをシート2の表に抽出 週2だったら2週目の担当者データを抽出 A1・D1は手入力 A3は=IF(COUNTIF(Sheet1!D$2:D$1000,B$1)=0,"",MATCH($B$1&$D$1,Sheet1!$H$2:$H$1000,0)) 上記の様にシート2に表示したいんです。 細かく教えて下さい。何度やっても1行目のデータしか抽出しないんです。 A3=IF(COUNTIF(Sheet1!D$2:D$1000,B$1)=0,"",MATCH($B$1&$D$1,Sheet1!$H$2:$H$1000,0)) B3=IF($A3="","",IF(VLOOKUP($A3,Sheet1!$A$2:$H$1000,COLUMN(B1),0)="","",VLOOKUP($A3,Sheet1!$A$2:$H$1000,COLUMN(B1),0))) A4の2行目以降1になってしまって同じ物しか出ないんです。 Aの番号の抽出方法の式を教えて下さい。

  • Excelで条件に合うものを別Sheetに抽出

    Excel2003を使用しています。 下記画像で上の表がsheet1で、下の表がsheet2です。 Sheet1の情報をSheet2の表に抽出したいです。 たとえば、Sheet1で、3日の日(E列)にりんご、ばななに「○」がついているので、 Sheet2の3日の列(E列)に、「りんご」「ばなな」と表示されるようにしたいのです。 この条件を満たせる関数はありますか? 方法をご教授頂けると幸いです。 よろしくお願いします。 ※「○」は入力規則のリストで、ドロップダウンリストで表示させてるのですが、問題ないでしょうか?

  • データ表から条件一致データを抽出し別の1シート表示

    エクセルでマスター表から、データを抽出して表示させるのに困っています。 具体的には、下図1のB1~D10のデータ表があり、これをSheet2に下図2のように並べて、11行目から、4列おきに表示させたいのですがどうしたらよいのでしょうか。 以前に類似の質問があり、回答(http://qanda.rakuten.ne.jp/qa6497557.html)を参考にさせていただいたのですが、関数のみで表示され、簡明だったのですが、各々別々のシートに各人を抽出するケースのため、 今回の場合の一つのシートに逐次4列おきに表示しようと、コピーペースト等しても、うまくいきません、また数行下がった位置からスタートするだけで正しい表示がされません。これに使われた関数を何か一工夫する形で、できないでしょうか。 もし難しければ、VBAで教えていただけないでしょうか。 なお各図の下に示した数式は、上記回答であった数式です。 宜しくお願い致します。

  • Excelの質問です。2つの条件のどちらかを満たすデータを抽出し、別シートにデータを移したいです。

    こんばんは。以前の質問でも、データの抽出に関して教えていただいた者です。皆様の優しさに頼りっきりです。 今回は2つ以上の条件でデータを抽出したいと思ったのですが・・・なかなかスマートなやり方が浮かびませんでして(>_<) 今、手元には『名言.xls』というファイルがあります。 シートには名前をつけていません。(Sheet1,Sheet2・・・)といった感じになっています。 Sheet1のA列とB列には、以下のようなデータが入っています。 A列--------B列 sa-1--------若木に腰掛けな ar-1--------毎日少しずつ。それがなかなかできねんだなあ。(相田みつを) sp-1--------「がんばれ、がんばれ」という人がいるより、僕は、「できないでくれ」という人がいる方が熱くなる。(イチロー) sa-2--------骨肉相食む ar-2--------お前自身を知ろうとするならば、いかに他の人々が行動するかを観察せよ。お前が他の人々を理解しようとするならば、お前自身の心を見よ。(シラー『書き板』) ac1--------仕事は来た順。だってそれが誠意でしょ。(哀川翔) というように、A列には番号、B列には名言のデータが、ズラリと入っています。 sa-(=ことわざ)、ar-(=芸術家・思想家)、sp-(=スポーツ選手)、ac(=俳優)といった感じです。 この一覧のデータの中から、A列が「sa-*(ワイルドカード)」あるいは「ar-*」という、2つの条件のどちらかを満たした場合、そのセルの隣にあるB列のデータを抽出し、Sheet2のA列に、抽出したデータを並べたいのです。 皆様の英知をお借しください(>_<) よろしくお願いします<m(__)m>

  • Excelで条件に合うデータを別シートに表示したい

    Excel初心者です。 条件を満たすデータを別シートに抽出したく、 色々と調べているのですがよくわからず、困っています。 Excelに詳しい方、ご教示いただけますでしょうか? どうぞ宜しくお願い致します。 今回困っているのは、顧客管理において、 登録者の情報を入力している「登録者一覧」シートから、 現在も解約することなく利用中の顧客だけを、 同じブックの中の「利用中一覧」シートに表示したいと思っています。 また、「登録者一覧」シートは、 顧客が増える毎に情報を更新しますので、 「登録者一覧」シートの情報が更新されると、 「利用中一覧」シートの情報も同時に 更新されるように出来るととても助かります。 なお、各シートの形式は添付画像のような形です。 説明が下手でわかりづらいかもしれず申し訳ありません。 どうぞ宜しくお願い致します。

  • あるシートから条件に合うデータだけを別シートに抽出させる

    会社で上司に質問されたのですが、不明だったので教えてください。 元リストが入力してあるシート 番号 氏名 フリガナ 会社名   部署名 役職 参加費 1  太郎 タロウ  ○×株式会社 経理  課長 \1000 2  花子 ハナコ  株式会社△   総務      \1500 3  次郎 ジロウ  □□株式会社 人事  課長 \1000 このようなデータが100件以上あります。 この中から、参加日が1000円の人だけを下記のレイアウトで抽出をしたいのです。 抽出先リスト 番号 氏名 フリガナ 1  太郎  タロウ 3  次郎  ジロウ ※元リストは今後増える予定。 ※リストが増えた際の、再抽出はできるだけ自動でやりたい。 ※VBA(マクロ)は極力使いたくない(余計なメッセージが出ると余計混乱するので) フィルタオプションの設定を提案したのですが、「操作ごとに範囲を指定するのが面倒」とのことで却下されてしまいました。 オートフィルタで抽出して、コピペの方法も毎回コピペするのが面倒とのこと。 このわがままな上司を納得させる方法、ご存じないですか? もし分かる方がいましたら、ご教授下さい。 よろしくお願いします。 使用環境:Excel2000/WinXP

  • 条件に合致するものだけを別シートに表示

    エクセル2003を使用しています。 Sheet1に日付とともに商品出荷データが入力されています。 Sheet2~Sheet13までの12ヶ月分のシートにsheet1で入力された日付を元に、抽出表示したいと思います。 sheet1 商品コード 商品名 出荷日 A001 ABC 2012/6/10 A089 AZZ 2012/6/19 B006 BAA (出荷されていない物は日付の入力無し) C006 C4587 2012/7/6 Sheet2以降のA1セルには、201206 のように年月を入力しておき、抽出条件とします。 また抽出表示項目は、Sheet1に入力されている全ての情報です。 (商品コードから出荷日まで) このような表示にさせたい場合の、式を教えて頂けないでしょうか?  どうぞ、よろしくお願いします。

  • 条件一致の別シートから、セルデータ抽出

    添付画像に於いて、予測シートの手配月(F2~F6)のデータを、実績シートから抽出する為のF2~F6に入力する関数をご教授下さい。 条件としては (1)予測シートの手配済?項目が”済”ならば、オーダ番号と一致するデータを実績シートから検索し、そのデータ行から手配月を抽出する。手配済?項目は"済"が入らない場合は必ず” ”となる。 (2)添付画像に於いてはオーダ番号が重複しているが、その場合、実績シートの若番の行のデータを抽出。 (3)予測シートのオーダ番号の並びはランダムであり、昇順降順には成らない。 (4)添付画像ではデータは5行だが、実際は3000~5000行はある。 私の方で、予測シートのF2セルに次の関数を入力しましたが、戻り値は#N/Aとなってしまいました。 =IF(D2="","",LOOKUP(A2,実績シート!A:A,実績シート!D:D)) 以上宜しくお願いします。