• 締切済み

エクセルで、指定期間及び指定部門に在職する対象者を抽出したいのです。

お世話になっております。会社の在籍者名簿を作成したいのですが、次のような課題があります。 sheet1に以下のマスターデータがあります。   A    B     C    D     1 個人コード 所属コード 開始日付  終了日付 2  01   6000   2008/04/01 9999/12/31 3  02   1200   2008/03/01 9999/12/31 4  03    7000   2008/05/01 2008/05/20 5  04   1100   2008/03/01 9999/12/31 sheet2に期間以下の5月の在籍指定条件を設定します。 所属コード 1200及び1100 開始日付 2008/05/01 終了日付 2008/05/31 この期間内に該当する対象者が下記の通り抽出されます。   A    B     C    D     1 個人コード 所属コード 開始日付  終了日付 2  02   1200   2008/03/01 9999/12/31 3  04   1100   2008/03/01 9999/12/31 フィルタオプションの設定で抽出した際、複数の所属コードを指定して一気に抽出することは可能でしょうか?他に方法がありましたらお教え下さい。 私の質問表現に曖昧な点がありましたらお許し下さい。ご回答をいただければ嬉しく存じます。宜しくお願い致します。

みんなの回答

noname#204879
noname#204879
回答No.2

Sheet2     F      G    H 1 所属コード    1200 1100 2 開始日付  2008/05/01 3 終了日付  2008/05/31 4 5 6  FALSE     TRUE   TRUE 1.Sheet2 の範囲 F1:H3 に条件用のデータを(上のように)入力 2.Sheet2 の各セルに次の条件式を入力     F6: =OR(Sheet1!B2=G$1,Sheet1!B2=H$1)     G6: =Sheet1!C2<=G$2     H6: =Sheet1!D2>=G$3   範囲 F5:H5 は必ず空白のままにしておく ← これ、重要! 3.次の操作を Sheet2 から始める ← これ、重要! 4.[データ]→[フィルタ]→[フィルタオプションの設定]を実行 5.[抽出先]として“指定した範囲”に目玉入れ 6.[リスト範囲]ボックス内にマウスカーソルを置いて、Sheet1 の範   囲 の A1:D10 を撫で撫で   → Sheet1!$A$1:$D$10 と表示される 7.[検索条件範囲]ボックス内にマウスカーソルを移動して、Sheet2   の範囲 F5:H6 を撫で撫で   → Sheet2!$F$5:$H$6 と表示される 8.[抽出範囲]ボックス内にマウスカーソルを移動して、Sheet2 の範   囲 A1:D1 を撫で撫で   → Sheet2!$A$1:$D$1 と表示される   なお、当該範囲は、事前に Sheet1!A1:D1 がコピー&ペーストされ   ているものとする 9.[OK]をクリック

  • imogasi
  • ベストアンサー率27% (4737/17068)
回答No.1

H1:H3に 所属コード 1200 7000 下の行に条件を書き連ねるとOR条件。 データベース関数のクライテリア(条件)と同じ考え。 ーーー で フィルタオプションの設定を使うと 個人コード 所属コード 開始日付 終了日付 2 1200 2008/3/1 9999/12/31 3 7000 2008/5/1 2008/5/20 になりましたが。 回答のヒントになっているでしょう

関連するQ&A

  • エクセルで指定期間内に在職する対象者を抽出したいのです。

    お世話になっております。会社の在籍者名簿を作成したいのですが、次のような課題があります。 sheet1に以下のマスターデータがあります。   A    B     C    D     1 個人コード 所属コード 開始日付  終了日付 2  01   6000   2008/04/01 9999/12/31 3  02   1200   2008/03/01 9999/12/31 4  03    7000   2008/05/01 2008/05/20 5  04   1100   2008/03/01 9999/12/31 sheet2に期間以下の5月の在籍指定条件を設定します。 開始日付 2008/05/01 終了日付 2008/05/31 この期間内に該当する対象者が下記の通り抽出されます。   A    B     C    D     1 個人コード 所属コード 開始日付  終了日付 2  01   6000   2008/04/01 9999/12/31 3  02   1200   2008/03/01 9999/12/31 4  04   1100   2008/03/01 9999/12/31 日付についてのルールは以下の通りです。 A.個人コード03は、終了日付が2008/05/31前の為該当しません。月末まで在籍する方が対象となります。 B.在籍指定条件の開始日付より前に開始日付がスタートしている方は対象となります。 私の質問表現に曖昧な点がありましたらお許し下さい。ご回答をいただければ嬉しく存じます。宜しくお願い致します。

  • EXCELデータベース期間抽出について

    初心者です。ご教授おねがい致します。 商品の仕入れ、売上などの管理をデータベースにしています。 ご教授頂きたいのは、任意の期間のデータの抽出についてです。 現状はフィルタオプションを活用し以下のように行っています。 フィールド C7 日付 D7 期間 E7以降は商品名、仕入れetcです。 検索条件範囲をD3:H4に設け D4に =AND(C8>=$C$3,C8<=$C$4) と入力しています。 期間抽出する際にC3に開始年月日 C4に終了年月日を入力して います。テーブルのD8には=(AND(C8>=$C$3,C8<=$C$4)) D9 =(AND(C8>=$C$3,C8<=$C$4))・・・・ この方法だと期間を無視した抽出ができないですよね。 (例えば期間に関係なく品目で抽出したい場合など) 期間日を入力しないときは=(AND(C8>=$C$3,C8<=$C$4)) が無効になるようにするには、どうすれば良いのでしょうか? 文章力がなくてごめんなさい。 宜しくおねがいします。

  • VBA 期間を指定してデータを別シートに抽出

    sheet1に下記のような(例)データベースがありA~N列までデータが入力されています。 A  B  C  D  E  F  G  H I J K L M  N 1 りんご ○○ BA 2526  ○  あお *** *** *** *** *** *** 2015/7/1 2 みかん ××  BC  2526 ○  あお 2015/8/1 3 すいか ●●  BB  2429  ●  あか 2015/8/12 4 メロン □□  DC  2355 □  あか 2015/7/13 5 バナナ ○×  FE  2526  ○  あお 2015/6/1 6 いちご ●□  LA  2429  ●  あお 2015/8/21 7 ぶどう □○  HK  2526  □  あか 2015/8/7 「sheet1」N列の日付を元にして、別シート(sheet2)のA2列に「開始日付(yyyy/mm/dd」、B2列に「終了日付(yyyy/mm/dd」(例:2015/8/1~2015/8/31)を入力し、フォームボタン(例:抽出)で検索を開始し、抽出された結果のsheet1のA列~G列、N列のみ(H列~M列は不要)をSheet2のA7以下へ表示したいと考えています。 A  B   C  D  E  F  G   N 2 みかん ××  BC  2526 ○   あお 2015/8/1 3 すいか ●●  BB  2429  ●  あか 2015/8/12 6 いちご ●□  LA  2429  ●  あお 2015/8/21 7 ぶどう □○  HK  2526  □  あか 2015/8/7 期間を指定し検索した結果を別のシートへ表示するにはどのようなVBAのコードを使用すれば良いでしょうか。 宜しくお願いします。

  • EXCELでの行の抽出

    sheet1に   A    B    C    D 1 日付 金額  備考  コード 2 01  1000 あいう    1 3 10  2000 えおか    3 4 20  3000 きくけ    4 5 30  4000 こさし    1 . . . という感じで元データ(100行ほど)が入っています。 これを元にしてsheet2に   A    B    C    D 1  1 2 日付 金額  備考  コード 3 01  1000 あいう    1 4 30  4000 こさし    1 . . . というふうに表示したいのです。 sheet2のセルA1に入っているコードと一致するコードが入っているsheet1の行を抽出してsheet2に行の隙間なく表示させたいのです。 こんなことはできるのでしょうか? メニューからコマンドを選択して・・・という方法ではなく、計算式かマクロで実現したいのです。 エクセル2000、Win98です。よろしくお願いします。

  • フォームからクエリの抽出期間を指定するにあたって

    フォームのテキストボックス(開始日付,終了日付)に入力された期間内の レコードをクエリで抽出するために、以下のような抽出条件を設定しています。 Between [Forms]![フォーム1]![from date] And [Forms]![フォーム1]![終了日付] ここまでは問題なく出来ています。 ですが、例えばテキストボックスに何も入力していないときに、 全ての期間から全件表示させるような方法はありませんでしょうか? IIf(IsNull([Forms]![フォーム1]![開始日付]),True,~ というような形で、IIfとIsNullの組み合わせも考えたのですが、 日付は直接フィールドでは無く抽出条件のため、 Trueより後が設定できずに悩んでおります。 出来ればVBAは使いたくないのですが、 何か良い方法はありませんでしょうか?

  • エクセルで指定月の最小値を抽出したいです

    日頃からお世話になっております。 今回教えていただきたいのは、 エクセルにて指定月の最小値の 抽出方法が分からず困っております。 まずは、簡易化したエクセルが下記です。 ---------- シート1 ----------   A       B 1 2014/5/12 15.1 2 2014/5/23 20.8 3 2014/5/30 10.1 4 2014/6/11 25.6 ---------- シート2 ----------   A(指定月) B(最大値)  C(最小値) 1 2014/5    20.8      ● 2 2014/6    25.6      ● ---------- 上記の構成で、B1に 下記のコードを入れると 正しく最大値は抽出されます。 =MAX(INDEX((YEAR(シート1!A$1:A$65640)=YEAR(A1))*(MONTH(シート1!A$1:A$65640)=MONTH(A1)*シート1!B$1:B$65640,)) しかしながら、シート2のC1に 上記のコードのMAXをMINに 書き換えるだけでは最小値は 抽出してくれません。。。 何かほかに手立てはありますでしょうか? ご教授よろしくお願いいたします。>< ※ちなみにエクセルは Excel2007を使用しております。

  • Excel 該当データ数の抽出方法(日付)

    Excel 該当データ数の抽出方法(日付) <元データ>  A    B      C 1 氏名  開始日  終了日 2 3 青木 2010/3/1 2010/3/10 4 石田 2010/3/1 2010/3/20 5 鈴木 2010/3/3 2010/3/7 6 佐藤 2010/3/1 2010/3/3 7 田中 2010/3/5 2010/3/17  上記のような元データがあった場合に、各日に実施されているデータ数(開始日~終了日の間 に当たるデータ数)を以下のように抽出したいのですが、その方法を教えていただけないでしょうか。抽出先は同じシート内でも、別シートでもいいのですが。 <抽出>    A      B 1  日付    該当数 2 3 2010/3/1   3 4 2010/3/2   3 5 2010/3/3   4 6 2010/3/4   3 7 2010/3/5   4  よろしくお願いします。 

  • エクセル 抽出方 教えて下さい

    sheet1に    A    B      C       D        E        F 1 名前  住所  2011/4/22  2012/4/22  2016/4/22  2021/4/22 と(C1は入力日付D1~F1には関数でN年後の日付が入力)縦に 500件程あります。D~Fのデータの中で指定したたとえば2016年5月が含まれるA~Fまでの表を抽出がしたいのですがどうしたらできるのでしょうか?できれば別シートに抽出結果を表示したいです。 オートフィルタでも関数でも構いません。ご教示お願い致します。 OS WindowsXP pro Office Excel 2003 です。

  • Excelでのデータ抽出

    Excelに複数シートがあり、各シートには以下の内容が記載されてます。  A列 伝票No.  B列 日付  C列 担当者  D列 型番    ・    ・    ・ B列で任意の日付を検索し該当する値があれば、その行(A~D…列)を別シートにコピーし抽出したいのです。 VBAを使ってやりたいのですがどうしたらよいでしょうか? よろしくお願いします。

  • エクセル 抽出マクロについて

    はじめまして。マクロ初心者です。 エクセルで抽出結果を別シートにコピーしたいのですが、 抽出条件が2列にわたっています。 A     B      C      D 日付   タイトル   分類(あ)  分類(い) 11/22   テレビ    3      2 12/15   ラジオ    1      4 11/18   雑誌     2      5 …というような感じです。 例えば分類が「2」のものを抽出したい時に、 ●シート1のあるセルに「2」と入力してマクロを実行。  ↓ ●シート2に以下のように結果をコピーして表示。 A       B 日付     タイトル 11/22     テレビ 11/18     雑誌 という具合にしたいのです。(C列、D列は表示しない) データはシート3に入力されていて、今後どんどん増えていく予定です。 エクセルは2007です。 本やホームページを参考に試行錯誤したのですが、うまくいきません…。 どなたかご回答よろしくお願いいたします。  

専門家に質問してみよう