- ベストアンサー
エクセルでの検索
エクセル2000です。 品名を入れると以前に入力した時と同じ番号を表示できるようにしたいです。 例えば、 C D 1 005 みかん 2 003 ぶどう 3 009 りんご 4 005 みかん 5 009 りんご 6 ぶどう のようにデータが入っています。 「D6」に「ぶどう」と入力した際に「C6」に「003」と 表示されるような計算式をいれたいのです。 自分なりに 「VLOOKUP(C6,C1:D5,3,FALSE)」 まで考えて みたのですが、なにぶん初心者ですので限界です。 ご存知の方にお教え頂きたく質問させて頂きます。 なにとぞよろしくお願い致します。
- みんなの回答 (4)
- 専門家の回答
質問者が選んだベストアンサー
vlookup関数は、入力する方のセル(→ぶどうの列)を左側にもってこないといけなかったはずです。 C列にくだものの名前、D列に商品番号と、列を入れ替えても宜しいでしょうか? C D 1 みかん 005 2 ぶどう 003 3 りんご 009 4 みかん 005 5 りんご 009 6 ぶどう =vlookup(C6,C1:D5,2,false) "C6"のセルの値に呼応する値を"C1からD5"までの表から検索しなさい。C列を1列目として"2"列目にある結果(D列)の値を返しなさい。という数式です。
その他の回答 (3)
C6: =IF(ISNA(MATCH(D6,D$1:D5,0)),"",OFFSET(C$1,MATCH(D6,D$1:D5,0)-1,0))
お礼
回答ありがとうございます。 数式を入れてみたんですけど、エラーになってしまします…。 私の知識がないばっかりにせっかく教えてくださったのにすみませんでした。 表示する列がCとDで変わってしましますが、No.2の方の数式で解決したいと思います。 ありがとうございました。
- CaveatEmptor
- ベストアンサー率26% (126/470)
はじめまして。 シートの別のところに以下のように表を作っておきます。そうすると=VLOOKUP(D1,$A$1:$B$3,2)でできますよ。 A B 1 ぶどう 003 2 みかん 005 3 りんご 009 B列は必ず昇順にしておいてください。 $A$1:$B$3の部分はコピーしても変わらないように絶対セルにしてあります。
お礼
説明不足ですみません。。 「ぶどう」とか「りんご」とかの名前情報は1000個以上ありますので、別にシートを作成するのは厳しいんです。 せっかく回答くださったのにすみません。 でも次回の作業の時に参考にさせていただきます。 ありがとうございました。
- mshr1962
- ベストアンサー率39% (7417/18945)
新規のコードの場合、数式を置き換えになりますがいいのですか?それでいいなら C6=INDEX($C$1:$C5,MATCH(D6,$D$1:$D5,0),1)
お礼
早速の回答をありがとうございます。 数式の置き換えは全く問題ないのですが、うまくいかないのです…(涙)。 初心者なのでやり方が悪いのかもしれないです。 すみません、回答ありがとうございました。
お礼
出来ました! 左側じゃないと駄目なんですね。 見た目を考えますと右側が良かったのですが、番号を表示出来ますのでこれでよしとしたいと思います。 とても助かりました。ありがとうございました。