• 締切済み

エクセル「VLOOKUP関数」についての質問です。

エクセル「VLOOKUP関数」についての質問です。 初心者に近いので応用が浮かびません・・・ VLOOKUP関数で「#N/A」部分には指定の文字を表示させ、返ってきた値をブランクで表示させたいのですがエラー表示は「IF関数」で「ISNA」で""の間に特定の文字を指定するところまでしか出来ず困っています。 【例】 <4月在籍者>  A      B     C 個人コード  名前   在職者 11111    あいう子  退職 22222    かきく子 33333    さしす子  退職 44444    たちつ子 55555    なにぬ子 C列に5月在籍者のデータから検索をかけ、同氏名が存在しない場合はエラーになります。 そこでエラーは「退職」と表示させつつ、同氏名が存在した場合は同氏名を表示させるのではなく、ブランクにしたいのです。 わかりにくい説明ですが どうか よろしくお願いいたします。

みんなの回答

回答No.3

すみません 少々追加をいたします。 =IF(ISNA(VLOOKUP(A2,5月在籍者データ,1,FALSE)),"退職",IF(B2=VLOOKUP(A2,5月在籍者データ,2,FALSE),"","退職")) 5月在籍者データ部分をセル2列部分( $A$2:$B$20 )として下さい。 (個人コード と 名前 の2列) こうすると個人コードと名前が一致しない場合にも対応します。 名前で参照すると、同姓同名の他者にも在職になってしまいますので 修正しましたのと、もし個人コードを再使用して他者に割り振っても 動作が保証されます。 (後側の VLOOKUP(A2,5月在籍者データ,2 ←が 2 になっていることに  注意してください)

回答No.2

4月在籍者データと5月在籍者データを開いておいて 4月在籍者データのB2セルに以下の式を入力し =IF(ISNA(VLOOKUP(B2,5月在籍者データ,1,FALSE)),"退職","") 5月在籍者データ部分を消去してそこにカーソルを置いたままの状態で 4月在籍者データの検索範囲をクリックすれば良いと思いますが だめでしょうか? 注意:セル番地部分(F2~F20 の場合)が $F$2:$F$20 になっていることを    確認してください。 うまく動作するようなら B2セルのデーターを下に必要分コピーすれば、 良いと思います。

onekoneko624
質問者

お礼

ありがとうございます! バッチリできました!

  • cev87700
  • ベストアンサー率72% (187/257)
回答No.1

添付図のような意味ですか? 添付図のような結果だったら、入力したのは =IF(ISERROR(VLOOKUP(B3,$C$10:$C$14,1,0)),"退職","") …です。 ISERROR関数を使って、結果がN/Aだったら「退職」、そうでなければブランク("")という式です。 間違ってたら無視してください。

onekoneko624
質問者

お礼

ご丁寧に添付図まで、ありがとうございます! どちらの方法も私が求めていた結果になり、大変助かりました。