• ベストアンサー

エクセルで条件を満たすものを抽出させる(関数で)

シート1にタイムを計った一覧があります。    A   B   C 1 山田   2  3.5 2 田中   5  4 3 根岸   2  2.3 4 村井   5  3 5 鈴木   5  3 シート2には社員名簿があります。社員は増減があるため更新したら、それも反映させたいです。   A   B    1 山田 社員 2 根岸 社員 3 村井 社員 そして、シート3に社員で、かつB列が2の情報だけを表示させたいのです。    A   B   C 1 山田  2   3.5 2 根岸  2   2.3 シート3にはどのような関数を入れたらよいのでしょうか?? よろしくお願い致します。 ちなみにVistaです。  

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

  • ベストアンサー
  • kagakusuki
  • ベストアンサー率51% (2610/5101)
回答No.1

 まず、適当な使用していないシート(ここでは仮にSheet4とします)のA1セルに次の数式を入力して下さい。 =IF(AND(INDEX(Sheet2!$B:$B,ROW())="社員",COUNTIF(Sheet1!$A:$A,INDEX(Sheet2!$A:$A,ROW()))),ROW(),"")  次に、Sheet4のA1セルをコピーして、Sheet4のA2以下に貼り付けて下さい。  次に、Sheet3のA2セルに次の数式を入力して下さい。 =IF(ROWS($2:2)>COUNT(Sheet4!$A:$A),"",INDEX(Sheet2!$A:$A,SMALL(Sheet4!$A:$A,ROWS($2:2))))  次に、Sheet3のB2セルに次の数式を入力して下さい。 =IF($A2="","",IF(COUNTIF(Sheet1!$A:$A,$A2),VLOOKUP($A2,Sheet1!$A:B,COLUMNS(Sheet1!$A:B),FALSE),"データ無し"))  次に、Sheet3のB2セルをコピーして、Sheet3のC2セルに貼り付けて下さい。  次に、Sheet3のA2~C2の範囲をコピーして、同じ列の3行目以下に貼り付けて下さい。  以上です。

k2115
質問者

お礼

丁寧なご回答ありがとうございました。 やってみます!!!

k2115
質問者

補足

丁寧なご回答ありがとうございます。 ご質問があります。 面倒でなかったら、式の意味なども教えて頂けるとありがたいです。 シート4にはどういった意味合いで関数、シートを作成するのでしょうか? また、シート3には入れる関数はどのような意味合いなのでしょうか? ざっくりのでいいですので、教えて頂けたら幸いです。

すると、全ての回答が全文表示されます。

関連するQ&A