• ベストアンサー

vlookupのエラーについて

vlookupを使って個人番号から名前(別シートにある氏名一覧から)を取り出したいのですがうまくいきません。 ちゃんと取り出せるデータもあるのですが、部分的に何行かまとまって同じ氏名が取り出されてしまいます。 具体的に言うと、4500と4501の個人番号の氏名がどちらもAさんとなってしまいます。(4500:Aさん、4501:Bさんのはずなのに) 考えられる理由は何かありますでしょうか。 初歩的な質問で、しかも質問の方法が分かりづらかったら申し訳ありません。自分でも何度も試してみたのですがうまくいかず困っています。 どうぞよろしくお願いします。

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

  • ベストアンサー
  • n-jun
  • ベストアンサー率33% (959/2873)
回答No.1

VLOOKUP関数のヘルプより 範囲 目的のデータが含まれるテーブルを指定します。セル範囲の参照、または List、Database のような名前を指定します。 検索の型に TRUE を指定した場合、範囲の左端の列のデータは、昇順に並べ替えておく必要があります。 並べ替えないと、正しく計算が行われません。 昇順の並べ替えでは、数値は 1 ~ 9、アルファベットは A ~ Z、かなは "あ" ~ "ん"、ブール型の値は FALSE から TRUE、日付は古い順に配列されます。 ⇒個人番号は昇順で並んでいますか? または、 検索の型 に FALSE を指定した場合は、範囲のデータを並べ替えておく必要はありません。

kao278
質問者

お礼

丁寧に教えて頂きありがとうございました。 解決しました!

その他の回答 (1)

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

関数のエラーの質問でありながら、式もあげず、シートのセルの値の 状況も質にあげない。心がけが悪いですよ。私のエクセルの関数の回答の大半は、実例と式を記して回答してます。質問者が例を書かないから、私が考えて実例を作ることも多いが手数。 ーーー VLOOKUP関数で不都合が出そうなのは (1)VLOOKUP関数の第2引数の表範囲を指定するとき絶対番地に($をつけてない)してない (2)第4引数はFALSE型にしてますか 表のデータの並び順はソートしてなくて良い。 ーー (4)内容ては検索値と表のエントリが余分なスペースや全角半角 などの気づきにくい差があること ーー (5)まさか下記は知ってるでしょうね VLOOKUPは検索表に同じものが2個あっても最初のものしか捉えられない。

関連するQ&A