- 締切済み
VLOOKUPで、漢字を検索値にする場合。
エクセルのVLOOKUPで検索値を、「氏名」にして作成しましたが漢字のせいか、誤った値を引っ張ってきてしまいます。 範囲を、昇順に並び替えても同じようになってしまいました。 (フリガナはつけていません。) どこを直せばいいのかまったく分かりません。 又、他に良い方法がありましたら教えていただけますか? よろしくお願いします。
- みんなの回答 (5)
- 専門家の回答
みんなの回答
- makimaki13
- ベストアンサー率0% (0/0)
姓と名の間のスペースサイズは一緒ですか? 成田浩二 スペースなし 成田 浩二 半角スペース 成田 浩二 全角スペース
- mu2011
- ベストアンサー率38% (1910/4994)
no1です。 FALSE型でも変わらないという事はありえません。 F9キー押下して変わるようでしたらツール→オプション→計算タブの計算方法を自動に変えて下さい。 因みにVLOOKUP関数の検索値が文字列の場合、完全一致型のFALSEを選択しかありません。 検出できない場合には関数がエラー(#N/A)を戻しますので、回避するのであれば、事前チェックをした方が良い思います。 (例)F14=IF(COUNTIF($U$2:$U$4,$D$14),VLOOKUP($D$14,$U$2:$V$4,2,FALSE),"")
- Wendy02
- ベストアンサー率57% (3570/6232)
こんにちは。 成田浩二 032-068 島田達朗 001-343 加藤晴之 113-026 この三つのデータで検索する限りでは、VLOOKUPのオプションを変えたり、フリガナデータを落としたり、さまざまなことをしてみた結果、そのような状態は出ません。 したがって、ツール-オプション-計算方法 計算方法が、「手動」になっているのではないか、と推測しました。 それを、「自動」になっているか、確認してみてください。 なお、「並べ替え」の際は、「並べ替え」-オプション-方法 ふりがなを使わない をクリック-OK で、並べ替え-昇順で、してみると良いと思います。 ただし、 =VLOOKUP(検索値,範囲,列番号,検索の型) の第4引数の[検索の型]を、[FALSE]にする限りは並べ替えは必要ありませんが、その代わり、エラーが発生することになりますので、必要に応じて、=IF(ISERROR(....),"",....) のような構文にしたほうがエラーを出さずに済みます。
- hula-girl
- ベストアンサー率38% (91/239)
氏名(文字:漢字)でもコードに使えます。 設定した関数の式を書いて下さい。どのように書いたか分からなければ添削の仕様が有りません。 取りあえずドットとコンマは間違えていませんか? もしくは、氏名の間違いを確認して下さい。 例 -VLOOKUP($B3,$H$3:$I$8,2,FALSE) =VLOOKUP(コード参照セル,表の範囲、表の2番目のデータ、FALSE)
補足
以下のように作成してみました。 「FALSE」にしても、同じように誤った値を引っ張ってきます。 F14=VLOOKUP($D$14,$U$2:$V$4,2,1) D14 F14 U2 v2 ----------------------- --------------------- 島田 達朗 | 032-068 | 島田 達朗| 001-343 ----------------------- --------------------- 加藤 晴之| 113-026 --------------------- 成田 浩二| 032-068 よろしくお願いします。
- mu2011
- ベストアンサー率38% (1910/4994)
vlookup関数の第4引数をfalse(検索値と完全一致)に変更して下さい。 これがtrueだと近似値で検索されますので誤った文字列となります。
お礼
回答ありがとうございます。 やってみたのですが、上手くいきませんでした。 何か、データが悪いのでしょうかね…
お礼
計算方法は、「自動」になっていました。 もう一度初めからやってみようと思います。何度も丁寧な回答ありがとうございます。