- ベストアンサー
VLOOKUPにつきまして
業務で処理していて困っている点がありまして質問があります。 B1に「A1」とコードを入力するとB2に「数字」が表示するよう、 =IF(B1="","",VLOOKUP(B1,$K$3:$S$50,1,FALSE))と計算式をしました(ちなみに「K3」~「S50」にデータを入力しました)。すると「#N/A」と表示してしまいます。何が原因でしょうか? アドバイスをお願いします。
- みんなの回答 (4)
- 専門家の回答
質問者が選んだベストアンサー
まあ、IFは関係ないね、とりあえず。 A1というコードがK列にないってことだと思うけど。 =VLOOKUP(VALUE(B1),$K$3:$S$50,1,FALSE) なんてやると出てくるかもしれない。 全角半角が違うのかも知れないし、Kの中に入ってるデータがないとわからないなぁ。
その他の回答 (3)
- fever
- ベストアンサー率43% (32/73)
【K列に「68」の数字。隣のA列に「A1」の数値が入っています】 ならば、計算式は =IF(B1="","",VLOOKUP(B1,$A$3:$K$50,11,FALSE)) そもそも、VLOOLUPは、(検索値,範囲,列番号,検索の型)でして 【範囲】の最初の列の中に【検索値】があったら、その列から何番目【列番号】の値を参照! というものです。 ですから、求めたい値がK列以外の列にあるのでしたら、それを指定してあげる関数も入力してあげなければNGです。
- mshr1962
- ベストアンサー率39% (7417/18945)
B1に入力したコードがK3:K50に存在していません。 入力したコードは文字列のようですが、全角(2バイト)半角(1バイト)の違いがあるか、誤入力していませんか? また例の式だと表示するのはB1と同じ値になります。(列番号が1の為)
- Turbo415
- ベストアンサー率26% (2631/9774)
B1表にない数値を入れていますね。K3:S50のK列に無い数値を入れているとエラーになります。 ちなみに、K列が索引ですから、$S$50の後の1は索引の数値を表示することになります。 つまりk列に「A1」と入れるとその隣のL列の「10」を出したいなら、$S$50の後は2だし、M列の数値をだしたいなら3になります。 B1に「A1」と入れたのならK列に「A1」がないとこのエラーが出ます。また、K列に「A1」がある場合、この式ならB1セルに「A1」と出てしまいます。
お礼
ありがとうございます。 ちなみに「B1」に「A1」と入力すると「B2」に「68」というコードを出したいです。K列に「68」の数字。隣のA列に「A1」の数値が入っています。ですので牽引1列目であるk列の数値を反映するよう計算式を作ったのですが?なぜできないのでしょうか?
お礼
ありがとうございます。「A1」のコード「68」はK列に入力しています。ですので計算式に「1」と入れました。ちなみに「A1」の入力の際は同じフォント・同じ文字サイズ・表示形式は標準にしました。 全角・半角に関しても同じのにしました。 何が原因でしょうか?