こんにちはゲストさん。会員登録(無料)して質問・回答してみよう!

解決済みの質問

Excel2003 VLOOKUP

       A列:名称           B列:単位
__________________________
アイウエオ 1234A(121kg/DM) | DM 
カキクA(180kg/DM)         | DM
アイウエオ 1234A(10kg/缶)    | 缶
サシスセB(180kg/DM)        | DM

■sheet1
 上記のような表を作成。
 A1~A4に【名称】と名前を定義。

■sheet2
 A1、A2のセル:名称をリストから選べるように入力規則を設定。
 B1、B2のセルにリストから選んだ名前を元に、VLOOKUP関数で単位を表示。

このように設定したのですが、どうもうまく表示されません。

何がうまくいかないかというと、
・アイウエオ 1234A(10kg/缶)が2つ表示される
・↑を選択すると、単位の部分には「缶」と表示されるはずなのにDMと表示される (2つのうちどちらを選択しても同じ)


sheet2のB1に入っている数式は

=VLOOKUP(A1,sheet1!$A$1:$B$2,2,0)

リストを昇順に並べ変えてみても結果は同じでした。

どなたか原因がわかる方がいらっしゃいましたら教えてください。

投稿日時 - 2009-07-13 15:18:55

QNo.5122086

困ってます

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

>・アイウエオ 1234A(10kg/缶)が2つ表示される

それって、元のデータ自体間違ってるんじゃないですか?
ちゃんと入力されてるかどうか確認された方が・・・
VLOOKUP関数は検索値が2つ同じものがあった場合、上にある方のデータを優先しますので、1個目が「アイウエオ 1234A(10kg/缶)」になっていた場合「DM」が返ってくるのはうなづけます。

ところで、VLOOKUP関数の参照範囲ですがせっかく「名称」と名前をつけてるのであれば「名称」とすればいいんじゃないでしょうか?
その方が範囲の指定間違いとかが防げますよね。 

投稿日時 - 2009-07-13 16:13:30

お礼

1度保存し、開きなおしたところなおっていました…。
原因はよくわかりませんが、きちんと表示されるようになったので
よかったです。

>ところで、VLOOKUP関数の参照範囲ですがせっかく~~

関数にも名前で定義することが出来るんですね。
知りませんでした。たしかにその方が間違いを防げますね!
勉強になりました。ありがとうございました。

投稿日時 - 2009-07-13 16:20:50

ANo.2

このQ&Aは役に立ちましたか?

2人が「このQ&Aが役に立った」と投票しています

回答(2)

ANo.1

関数の参照範囲が違っています。
=VLOOKUP(A1,Sheet1!$A$1:$B$4,2,0)

ほかは、質問文のとおり入力したところ、私の環境ではうまいくいきました。どこか手順が違っているのではないでしょうか?

投稿日時 - 2009-07-13 15:33:47

お礼

1度保存し、開きなおしたところなおっていました…。
原因はよくわかりませんが、きちんと表示されるようになったので
よかったです。

関数の参照範囲は質問文の入力ミスでした!
すみません…。

回答ありがとうございました!

投稿日時 - 2009-07-13 16:21:55

あなたにオススメの質問