• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:EXCELで複数条件に合致する全データの抽出方法)

EXCELで複数条件に合致する全データの抽出方法

このQ&Aのポイント
  • EXCELで複数条件に合致するデータを一括抽出する方法について説明します。
  • 講師への講師料支払いの明細表を月ごとに作成したい場合、EXCELの関数を使用して実現できます。
  • 条件に合致したデータを抽出して他のシートに表示する方法を詳しく解説します。

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

  • ベストアンサー
  • keithin
  • ベストアンサー率66% (5278/7941)
回答No.2

こんにちは。 初心者さんが一度はやってみたいと思いついて、出来ずに諦めるご相談の一種です。 エクセルには「条件に該当するデータを並べて表示する」関数はありません。 簡単な作成方法: シート1に実施記録を用意する シート2以降に次の通り作成する C1セルに2012のように年を記入する D1セルに9のように月を記入する E1セルに講師名を記入する A1セルに「実施記録」と記入する A2に =IF(AND(YEAR(Sheet1!A2)=$C$1,MONTH(Sheet1!A2)=$D$1,Sheet1!C2=$E$1),ROW(),"") と記入、以下コピーしておく C3セルに =IF(ROW(C1)>COUNT(A:A),"",INDEX(Sheet1!A:A,SMALL(A:A,ROW(C1)))) D3セルに =TEXT(C3,"aaa;;;") E3セルに =IF(ROW(C1)>COUNT(A:A),"",INDEX(Sheet1!D:D,SMALL(A:A,ROW(C1)))) とそれぞれ記入、以下コピーしておく。 何か条件を変えたいなら、A列の条件式を適切に応用します。 #補足 言わずもがなですがシート2のA列は別にA列にある必要はありません。 必要なら(目障りなら)M列でもZ列でも、どこでも好きなところに配置して作成します。

shigeru1123
質問者

補足

早速の回答ありがとうございます。 教えていただいたように数式を入力しているはずなのですが、どうもうまくいきません。 原簿データは月別にシートを分けたので、年と月の条件が必要ないため、講師名のみの条件に変更しました。 9月分の原簿データには、同一日、同一講師のデータが複数レコードづつ存在し、中居さんのデータは全部で60レコードあるのですが、9月1日のデータのみ(5レコード)しか表示されません。 その下のC3~D3は空白になります。 実施記録の列には、条件が一致したところの行番号が入るみたいですが、 25~28行までに25~28の数字入って、他は空白です。 C3のIF文の「ROW(C1)>COUNT(A:A)」ではじかれてしまっているのでしょうか。 そもそもこの式はどういう意味なのでしょうか。 それから、A2、C3、D3、E3の式の下方へのコピーは、抽出データ数が表示できる程度に適当でよいのでしょうか。 使ったことのない関数のため、質問ばかりで大変申し訳ございませんが、ご教示をお願いします。

その他の回答 (2)

  • keithin
  • ベストアンサー率66% (5278/7941)
回答No.3

再掲: >何か条件を変えたいなら、A列の条件式を適切に応用します。 と回答して置いた通り、添付図のシート2のC3、D3、E3の数式は前回と全く同じです。 シート2のA2だけ修正: =IF(Sheet1!C2=$E$1,ROW(),"") 以下沢山コピー >どこまでコピーしておいたらいいですか 最大限、つまり元表が仮にもしも「すべて中居さんだったら」、中居さんシートにはその行数だけデータを転記しなきゃなりませんよね。 現実にはそういう事は勿論ありませんが、「可能性として」そういう事があり得る限りは、元表の最大行数分だけ数式をコピーして備えておかなきゃいけません。 #補足 同じ「つもり」、やった「はず」でも、勝手に間違ったやり方をしているから正しい答えが得られません。 まず「全く同じ」で作成して、キチンと出来ることを確認してください。 次のステップとして、何をやっているのかちゃんと理解して、それから実地に「同じつもり」でやり直してください。 #そもそも 「全く同じ」で作成するとは、あなたがご相談にご自分で書いた通り、そしてわざわざ添付図まで付けて何行何列にどういう具合に記入するとご説明したその通りのレイアウトで、一回練習用にあなたもエクセルを作成してくださいという意味です。 そのあと実地でやってみたら失敗して、今は一体どこをどう直したらいいのか判らなくなったわけです。 それはつまり「例えば」で教われば、あとは自分で出来ると思ったのが間違いだったという事です。 なので今度は「ホントはこうなってます」「自分では教わった数式をこうしたらいいと思ってどこのセルにこう記入しました(けどこんな結果になってしまって上手くいきません)」というのをキチンと正しく詳しく具体的に目に見えるように情報提供して、このご相談は一回解決で閉じてから、もう一回新しいご相談として投稿し直してみてください。

shigeru1123
質問者

お礼

ご回答ありがとうございました。 ご指摘のとおり、添付図と全く同じものを作成し、教えていただいたとおりにやってみました。 自分では正しく入力したつもりですが、間違っているものですね。 何度か修正しているうちに、やっと添付図の例がうまくいきました。 これを応用して、実際のデータでやってみましたが、これもうまくいきました。 やはり一度正しい結果がでる例でやってみてから、理解し実施をすべきでした。 おかげさまで新しい関数等も勉強になり、完全ではありませんが、だいぶ理解できた気がします。 本当にありがとうございました。

  • bin-chan
  • ベストアンサー率33% (1403/4213)
回答No.1

「ピボットテーブル」がご希望の結果に近いかも。

関連するQ&A