エクセルで社員番号から実施日を表示する方法

このQ&Aのポイント
  • エクセル2003を使用して、過去3年分の健診データから社員番号を元に2010年度の実施日を表示する方法を教えてください。
  • 想像した方法としては、VLOOKUPやIF関数などを組み合わせて使用するといいかもしれませんが、具体的な手順がわかりません。
  • 以下のイメージのようなデータがあり、シート2に2010年度の実施日を表示させたいです。
回答を見る
  • ベストアンサー

エクセル 社員番号から 実施日を表示する

エクセル 社員番号から 実施日を表示する いつもお世話になっています。エクセル2003です。 過去3年分の健診データから社員番号を元に2010年度の実施日を表示させたいと思います。 VLOOKUPとIFかSUMPRODUCTなどの組み合わせだと想像したのですが、うまく行きません。 良い方法をご教授ください。 イメージは以下の通りです。 [シート1]   A    B    C    D  年度  社員番号 実施日  身長 ・・・  2008  1234  2008/4/1  2009  1234  2009/5/30  2010  1234  2010/4/28  2008  5678  2009/1/1  2009  1234  2009/12/3  2010  1234  2010/9/7 [シート2]   社員番号 5678  実施日[    ]                 ↑              ココに2010年度の実施日を表示する 以上、わかりにくいかもしれませんが、よろしくお願いします。 

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

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

=SUMPRODUCT((Sheet1!A2:A100=B2)*(YEAR(Sheet1!C2:C100)=2010),Sheet1!C2:C100) と入れて日付の書式をセットするなどで。 「今年の」としたいなら=2010を YEAR(Sheet1!C2:C100)=YEAR(TODAY()) とかでも良いですし, もちろん別のセルに2010を入れておいて YEAR(Sheet1!C2:C100)=X1 とかにしても構いません。 

mercury110
質問者

お礼

早速のご解答ありがとうございます。 書き方が悪かったと思います。 社員番号を[シート2]B2 に入力すると 実施日がD2に出るようにしたいのです。 申し訳ないですが、もう一度ご教授願います。

mercury110
質問者

補足

ありがとうございます。 何とかなりそうです。もっと関数を勉強します。

その他の回答 (1)

  • Sinogi
  • ベストアンサー率27% (72/260)
回答No.2

回答式をそのまま使ってみて駄目だからすぐ「出来ない」とするのではなく自らも考えて見ましょう。 #1で回答された =SUMPRODUCT((Sheet1!A2:A100=B2)*(YEAR(Sheet1!C2:C100)=2010),Sheet1!C2:C100) はご希望のとおり、Sheet2のセルD2に入力する式です。 ただし、例示では 社員コードがSheet1!B列 該当年次がSheet1!A列 なので回答式を少し変更する必要があります。 Sheet1!A2:A100=B2  → Sheet1!b2:b100=B2  (社員コード) YEAR(Sheet1!C2:C100)=2010 → Sheet1!a2:a100=2010 (該当年次) とすれば結果が表示されます。 ただし回答例では元データが100行を超えると検索対象から外れるので適宜メンテナンスが必要です。 ※もしこの説明で納得されましたら、Pointは#1氏へお願いします。式を考案されたのは#1氏ですから。

mercury110
質問者

お礼

ありがとうございます。 関数をもっと勉強します

関連するQ&A

  • Excelの行番号、列番号の表示について

    Excelの行番号と列番号がシートの右側に表示されてしまいます。 行番号1,2,3...の表示がシート右側に、列番号A,B,C...の表示がシートの右側から表示されています。 Excelを起動すると、全てのファイルがこの状態で開きます。 オプションの設定などを確認してみましたが、該当する設定はありませんでした。 通常(シートの左側)の表示に戻したいのですが、方法をご存知の方がいらっしゃいましたら、ご教授願います。

  • エクセルで列番号も行番号もセルも表示されてないシートを見ました。

    エクセルで列番号も行番号もセルも表示されてないシートを見ました。 白紙の画用紙のようなシートです。 こういうシートはどのようにして作るんですか? メニューの表示とか調べてみましたが分かりません。 宜しくお願いします。

  • EXCEL 行列番号の表示

    他のシステムからエクスポートしたファイルを開くと、行列番号及びシート見出しが表示されていません。 このシステムからエクスポートしたエクセルファイルは、全て同じ設定になっており、エクスポート時に制御することも不可能です。 エクセルでファイルを開いてから、ウィンドウオプションで、行列番号、シート見出しを表示させているのですが、マクロを利用してファイルを開いた際に自動的に表示させることはできないでしょうか? 色々と試してみたのですが、どうもうまくいきません。 よろしくお願いいたします。

  • エクセル 年度表示の方法について

    エクセル 年度表示の方法について いつもお世話になっています。エクセル初心者です。 エクセル2003を利用中です。 A列に YY/MM/DD と実施日が入力されています。 その日付を元に B列に実施年度を表示させたいのですが、どのようにすると効果的ですか? データ数が1500ほどあるので、何か良い関数があれば教えてください。

  • Excelシートにページ番号を表示したい。

    よろしくお願いします。 Wordでプリントを作成しています。その中に1枚Excelのシートを入れるのですが、Wordにはページ番号を打っているので、そのExcelシートにもページ番号を表示させたいのですが、どうすればよいか教えてください。※Excelシートは印刷範囲で印刷します。

  • エクセル VLOOKUP 番号重複でも表示させたい

    初めて質問いたします。 以下の表を別シートで検索して価格を表示させたいのですが、 顧客番号が重複により、表示させたい価格が出せません。 ------------------------------------ 例:シート1      A      B    C    D    1 顧客番号_会社名_商品_価格 2     01_A社__テレビ_5,000 3     01_A社__モニタ_2,000 4     02_B社__テレビ_5,000 5     03_C社__テレビ_5,000              :              : ------------------------------------ シート2 B2に以下の式を入れています。  =VLOOKUP($A2,シート1!$A$2:$D$5,4,0)      A      B      1  顧客番号_価格  2      01_5,000 3      01_5,000 ←ここを、2,000と表示させたい。 ------------------------------------ わかる方がおりましたら、ご教示ください。 よろしくお願いいたします。

  • エクセルで、2つの選択から、別シートの数字表示する

    恐れ入りますが、 エクセルで、2つの選択から、別シートの数字を 表示させたいのですが。  作業シート 1  番号 氏名 コード名  資格 取得日 2  112 阿部 A001    免許   参照シート 1  番号 氏名 コード名 資格 取得日 2  112 阿部 A001   免許 20130728 番号を入力しかつコード名を入力すると別シート の取得日が表示させるようにしたいのですが。 (コード名、資格は別の参照資格コード表より 表示させております(VLOOKUP)) 大変恐縮ですが、こちらが解決できないために、 業務が滞っております。 恐れ入りますが、ご回答のほう、よろしくお願い 致します。

  • 【エクセル2000】郵便番号を入力すると住所を表示するようにしたい(過去質問確認済)

    エクセル2000で郵便番号を入力すると住所を表示するようにしたいと考えています。 表示方法と現在の関数は次の通りです。 【入力シート】 A列:郵便番号入力セル B列:住所 全体(=C列&D列&E列) C列:住所 都道府県 (=VLOOKUP(A列,'データシート'!$A:$D,2,FALSE) D列:住所 市町村 (=VLOOKUP(A列,'データシート'!$A:$D,3,FALSE) E列:住所 番地以下 (=VLOOKUP(A列,'データシート'!$A:$D,4,FALSE) 【データシート】 A列:郵便番号 B列:住所 都道府県 C列:住所 市町村 D列:住所 番地以下 表示方法はこののやり方で問題がないのですが、 全国住所データが約12万件以上あるため、エクセルの列に入りきりません。 過去の質問を確認しましたが、希望の回答はありませんでした。 どうにかして検索データの量を12万件以上にすることは出来ませんか? シートを複数に分けるとか、VLOOKUP関数の検索列を複数に分けるなどでも結構です。 宜しくお願いします。

  • ExcelでIndexとMatch関数が使いこなせない

    すみません、カテゴリを間違えてまして、再度投稿いたします。 有給管理表をExcelで作成しています。 シート1に社員のデータ表を入力してあり、 シート2には有給が発生する社員へ有給の残日数や 付与日に関するお知らせの案内状をB5サイズで作っています。 シート1のデータを拾って、シート2の案内状へ反映させる際、 付与日や残日数などはVlookupで参照できるのですが、 社員番号は退職した社員がいるため番号が飛んでいて うまくできません。 IndexやMatch関数を使えばなんとかなりそうだと思い やってみましたが、VALUE!が表示されてしまいます。 どなたかうまくいく関数を教えて頂けますでしょうか? シート1のデータ例  A列   B列   C列   D列    E列 社員番号  氏名  入社日  付与日   付与日数 100001   くま  2007/4/1  2007/10/1  10 100003   たぬき 2007/5/1  2007/11/1  10 100005   うさぎ 2007/5/10 2007/5/10  10  100010   きつね 2007/6/1  2007/12/1  10 シート2(例)ページ1    B列   C列 B1 社員番号  100001←ここに式を入れたい B2 社員氏名  くま  さん(vlookupでC1を拾ってくる) B4 あなたの有給付与日は  2007/10/1 です。付与日数は 10 日です・・・・・・。 シート2 ページ2 B30 社員番号  100003 (←ページ1の次の該当者を拾いたい) B31 社員氏名  たぬき  さん B33 あなたの有給付与日は 2007/11/1 です。 付与日数は 10 日です・・・・・・。 このような感じです。社員番号が飛んでいても下の行を拾っていくような関数はありますでしょうか?(Index、Match関数以外でも結構です)

  • Excelで重複しないデータを表示したい

    Excelで作成した名簿があります。 その名簿のうち、重複する名前、住所等のデータを表示しないようにしたいのですが、どうしたら良いでしょう? 具体的には、名前、ふりがな、住所、電話番号、年齢等のデータがあります。 これはあるイベントの昨年度の申込者のデータで、この中から、昨年度の参加者には発送しないので、別シートに、参加者のデータのシートがあります。 ですので、申込者データシートから、参加者のデータを表示しないようにしたいのですが、検索して出てきた方法でやってみても、逆に、参加者のデータが抽出されてしまいます。 Excel2007ですが、データオプションから、「重複するデータを表示しない」にチェックを入れても、表示したくない、昨年度の参加者データが抽出されてしまうのです。 どうしたら良いでしょう?

専門家に質問してみよう