- ベストアンサー
VLOOKUPの検索値について
エクセルでVLOOKUPの関数を使うときの「検索値」に関する質問です。 この「検索値」が数式結果だと反映されませんよね? そこで範囲指定をして、「値だけコピー貼付」をしたのですが、 やっぱり反映されません。 <sheet1> A B C D 1 123 りんご 10円 XXX 2 124 みかん 20円 YYY 3 125 めろん 30円 ZZZ 4 126 かき 40円 QQQ ↑ この「123」や「124」が 別のシートからVLOOKUPで「DのセルがXXXなら123にする」 という数式の結果なんです。 この<sheet1>を利用して、別の<sheet2>に VLOOKUPで「“123”と入力したら“りんご”となる」 というようにしたいのですが、 この“123”“124”が数式結果のため、反映されません。 値だけ貼り付けても反映されません。 上書きで“123”“124”と入力すれば反映されますが 数が多いので困っています。 初心者なので、できるだけわかりやすく教えていただけたら 嬉しいです。
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
「反映されない」というのはExcelの動作にない単語ですが、 vlookup関数で#N/Aエラーになるという意味だと仮定します。 123とタイプすると、Excelは数値だと判断します。しかし数式など で"123"という値を返すと、Excelは文字列だと判断します。違いは 判りますね。現状ではSheet1の表には文字列が入ってて、Sheet2で タイプした数値では検索に引っかかってこないと思われます。 要するにどちらかに揃えればいいんですが、Sheet1のA列がさらに他 のシートからvlookupで検索した結果だとすると、根本まで遡ってす べてを数値にするのは面倒くさいですね。Sheet2で123と入力したも のが文字列として扱われるようにしましょう。Sheet2の検索値を入 力する予定のセルを選択し、書式→「セル…」の「表示形式」を 「文字列」にしてOKします。以後、その範囲にタイプした数字はす べて数値ではなく文字列として扱われます。
その他の回答 (2)
- no---bu
- ベストアンサー率37% (3/8)
やってみたけど、できました。 とりあえず、VLOOKUPで参照する範囲を絶対参照にする。 すべてのシートの表示形式を標準にする。 (シート全体を右クリック→セルの書式設定→表示形式タブ→標準) 試してみて。
お礼
他の方の回答を参考に、表示形式を「文字列」にするとできました。 でも、シート全体を「標準」にするとできませんでした(T_T) とりあえず、「標準」より「文字列」で作成していこうと思います。 回答をありがとうございました。
- mu2011
- ベストアンサー率38% (1910/4994)
>この「検索値」が数式結果だと反映されませんよね? ⇒反映されます。 問題は、入力セルと検索列の書式が数値と文字列になっている為です。 ご質問から推察すると、入力セルを文字列にした方が良いと思いますが如何でしょうか。
お礼
できました! ありがとうございます。
お礼
>「反映されない」というのはExcelの動作にない単語ですが、 そうなんですか。 だから検索しても出てこなかったんですね。 次からは使わないようにします。 >で"123"という値を返すと、Excelは文字列だと判断します。 どうしてこうなるのか、そしてどうすれば良いのかが すごくよくわかりました。 ありがとうございます。