• ベストアンサー

VLOOKUPで返った値が不満足

ビギナー以前のイントロダクションです。宜しくお願い致します。 OS・・・Win95 EXCEL・・・Ver97 社員データベースをシート1に、個人用(一人一枚プリントアウト用)をシート2に作成しています。 VLOOKUPで大体のデータは返るのですが、 生年月日などの日付が、データベースのセルが空欄の場合、何故か "M33.01.00"と表示してしまいます。 その他データベースの空欄のセルに対しても、"0"を表示してしまうので、これを" "と表示させたいのです。 良き関数を教えて下さい。

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

  • ベストアンサー
  • nishi6
  • ベストアンサー率67% (869/1280)
回答No.4

A1が未入力なら答えは無し($A$1="") →検索値が無ければ答えは無し(ISERROR) →検索値が未登録なら答えは無し(ISBLANK) の順に判定を行っています。検索値が見つからなかった場合を追加してみました。 『範囲』という範囲名が定義されていれば下記でいいですが、範囲名でなければ『データベース!範囲』を書いて下さい。 =IF($A$1="","",IF(ISERROR(VLOOKUP($A$1,範囲,4,FALSE)),"",IF(ISBLANK(VLOOKUP($A$1,範囲,4,FALSE)),"",VLOOKUP($A$1,範囲,4,FALSE))))

onekosama
質問者

お礼

ありがとうございました!nishi6さんをはじめ、Imogashiさん、_masaharuさんのおかげで、解決しました! また質問させていただきますので、宜しくご指導くださいませ。

その他の回答 (3)

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

>何故か"M33.01.00"と表示してしまいます。 皆がご存知で私が言うのは恥ずかしいぐらいですが、エクセルは日付は西歴1900年1月1日をスタート第1日としてそれ以後の経過日数で統一的に全て処理しているからですよ。1900年は明治33年です。表示を年号+2桁 年+月+日にしておられるから、日付けセルの空白セルは「0」扱いになり、日付的にはM33.01.00と表示されるわけです。

onekosama
質問者

お礼

回答、ありがとうございます。 なるほど、良く分かりました。空白セルを「0」と認識させなければ、これは解決するのでしょう・・ね・・・?

  • _masaharu
  • ベストアンサー率20% (4/20)
回答No.2

こんにちは。EXCELビギナーです。 私の場合は以下のようにします。 IF(参照するセル="","",VLOOKUP…)と IF関数で参照するセルが空欄なら空欄、違うならVLOOKUP関数

onekosama
質問者

補足

おお、早速の回答、ありがとうございます。 今、入力している状態を シート1(データベース) A2・・・検索コード(個人番号) B2・・・氏名 C2・・・ふりがな D2・・・入社年月日 などなど シート2(個人帳票) A1・・・検索コード M2・・・入社年月日 として、シート2のA1に検索コードを入力すると M2のところには =IF($A$1=””,””,VLOOKUP($A$1,データベース!範囲,4,FALSE)) と返して、「入社年月日」が表示されます。 問題は、シート1のD2のセルが空欄のときに起こります。 上記計算式を添削して下さい。宜しくお願いいたします!

  • nishi6
  • ベストアンサー率67% (869/1280)
回答No.1

今は  =VLOOKUP(*****) となっていると思いますが、この算式を  =IF(ISBLANK(VLOOKUP(*****)),"",VLOOKUP(*****)) と変えてみてください。検索結果のセルがブランクなら何も表示しません。

onekosama
質問者

補足

回答、ありがとうございます。 ちょっと試してみたのですが、容量の小さい自分の頭ではどうにもできませんでした。そこで、下記に計算式を記載しますので、修正していただけますでしょうか? =IF($A$1=””,””,VLOOKUP($A$1,データベース!範囲,4,FALSE)) シート2のA1に、シート1(データベース)A1にあるコードを入力すると、名前などを返してくれるようにしています。 宜しくお願いいたします!

関連するQ&A

  • vlookup関数について

    vlookupの関数でお尋ねします。 vlookupで検索したセルが空欄の際に、値を返すと作成した表のセルの部分には「0」が表示されます。 「0」を表示させず、空欄にしたいのですが、方法が分かりません。 もしくは、印刷時のみ「エラー」のときと同じように印刷されない方法があるなら、それでも構いません。 よろしくお願いいたします。

  • エクセル2003 関数 IFとVlookupの組み合わせについて

    エクセル2003 関数 IFとVlookupの組み合わせについて IF関数とvlookuo関数を組み合わせて関数を組もうとしています。 vlookupしたい元データが18万あるのでシートを(1)~(3)に分けています。 やりたいことは、 シート「(1)1~60,000」     A列:ID B列:社名 シート「(2)60,001~120,000」 A列:ID B列:社名 シート「(3)120,001~180,000」 A列:ID B列:社名 シート「集計」 このシートに関数の結果を表示したいです シート「集計」のH9のセルにIDを入れたらI9のセルに社名が自動表示される。且つH9のセルが空欄ならI9のセルも空欄になる。※入るIDはシート(1)~(3)のどこかにあります 関数教えて下さい。よろしくお願いします。

  • エクセルの関数VLOOKUPについて教えてください

    シート1に商品情報があり、シート2にプリントアウト用のフォームを作っています。 商品コードは数字が多いため商品コードの横に空白のセルを用意して、 そのセルに※を入力してシート2のフォームに表示しようとしています。 何度かVLOOKUPで試してみたんですがエラーが表示されます。 この場合はどういった関数にすれば上手く表示できますでしょうか、ご教授願います。

  • エクセル、VLOOKUP関数について

    (1)セルAの値を他シートから検索 (2)セルAが空欄なら空欄を返す (3)セルAが空欄でなければ、その検索したセルの値を返す (4)検索したセルが空欄であればBを返す =IF(ISNA(VLOOKUP(A1,他シート!$B$4:$G$501,2,0)),"",IF(VLOOKUP(A1,他シート!$B$4:$G$501,2,0)="","B",VLOOKUP(A1,前年度成績!$B$4:$G$501,2,0))) という風にしたくて、上記の式を書きましたが、(4)の検索したセルが空欄であってもBが表示されません。 どこを直せば良いか、教えてください。

  • VLOOKUP関数 正しい値が返されない

    sheet1にデータリストを入力、sheet2のA1にコード番号を入力し以下の表にSheet1の対象データを参照するというところ(VLOOKUP関数のみ)まではよかったのですが、元データに空欄の時は「データなし」と表示過去の質問を参照して下のような式に変更しました。 =IF(ISERROR(VLOOKUP($A$1,範囲,列番号,"")),”データなし”,(VLOOKUP($A$1,範囲,列番号,FALSE))) はじめは正しく表示はされたのですが、A1に違う値を入力し直しても値が変化しません。 エラー表示はでませんが、数式がどこか間違っているのでしょうか。 どなたかお知恵をお貸しください。

  • VLOOKUPとIFの組み合わせで困ってます

    シートが2枚あり、sheet1は工事記録一覧、sheet2は納品書です。 sheet2のセルA1に、工事記録の管理番号を入力し、 セルA2以降に、管理番号に該当する住所や建物名、 工事種類などを表示させたいと思ってます。 参考にするセルが空欄の場合には、空欄のままにしたいので、 IF関数とVLOOKUP関数を組み合わせて 下のように自分で式を組んでみましたが、#N/Aになってしまいます。 =IF(A1="","",VLOOKUP(A1,sheet1!A1:J20,3,FALSE) 同一シート内で同様の式を入れた時は、希望通りの答えが返ってきましたが、 別のシートだと上手くいきません。 どなたか正しい式をご教授いただけますでしょうか。 エクセル初心者で、ネットや本で調べながら作成しているので、 分かりやすく教えていただければ助かります。 どうぞよろしくお願いいたします!

  • エクセルのVLOOKUPについて

    VLOOKUPで別のシートのセルから数字を引っぱってくる設定をしたのですが、その参照するセルが空白だった場合、0が表示されてしまいます。 空白のときは空白にしたいのですが、以下の関数にどう付け加えればいいですか? =VLOOKUP(B2,Sheet1!B4:I52,8,0)

  • VLOOKUPが効かない(>_<)

    昨日出来たVLOOKUPの作業が今日は出来なくなりました。 そんな事ってありえますか? 使用するデータは異なりますが、VLOOKUP関数の条件部分は全く変えてません。 一致しない場合のエラー表示もなく、セルには関数式が表示されるだけです。 仕事とで息詰まって残業しています。どなたかお助けを~”(ノ><)ノ (課題内容) シート1には電話番号 シート2には電話番号と月額使用料 VLOOKUPで1と2を付け合わせ電話番号が合致する場合はシート1に月額使用料を記載したいです。

  • vlookup関数

    vlookup関数 book1に犬シートと猫シート、結果シートがあるとします。 犬シートのA1セルに"イヌ"というデータがあり、 猫シートのC1~C9セルに"ネコ"、C10セルに"イヌ"というデータがあります。 で、結果シートのA1セルに、 =VLOOKUP(犬!A1,猫!C1:C10,1,FALSE) という関数を入力すれば結果として"イヌ"が表示されると 期待したんですが、#N/Aとなってしまいます。 どうすればいいんでしょうか。

  • VLOOKUP関数のコピーについて

    お世話になっております。VLOOKUP関数を違うセルにコピーするのですが、参照するセルが替わりません。。#N/Aエラーが出てしまいます。たとえば、=VLOOKUP(B24,M3:N21,2,FALSE)をコピーして、違うセルに貼り付けても、=VLOOKUP(B24,M3:N21,2,FALSE)。また、オートフィルでやると、参照範囲もずれてしまいます。上手にコピーする方法はないのでしょうか。よろしくお願いします。

専門家に質問してみよう