- ベストアンサー
エクセルVBA(?)を使って
エクセルで特定の商品コードをセルに入力すると その商品コードに対する商品名称(日本語)を 表示させたいのですが、具体的にどのような コーディングにすればいいのでしょうか?? 入力シートから 商品コード・商品名称が入力してある シートを参照させて商品名称を取得したいのです。 可能ならば 該当する商品コードに対する名称が 取得できなかった場合、何かのメッセージボックスを 表示させたいのですが・・・。 エクセルのバージョンは97です。 OSはWin98です。 商品コードに対する商品名は1対1で 商品コード・商品名称の入っているシートと 商品コードを入力するシートとは 同一ブックです。 100件以上のコードに対して紙ベースで 商品名称を捜すのに 泣いています(≧_≦) 助けて下さい!!!
- みんなの回答 (4)
- 専門家の回答
質問者が選んだベストアンサー
こんにちは。 えーと,VBAではなく,関数を使った方法なんですが・・・。 VLOOKUP関数を使った方法です。 例えば,A列に商品コード,B列に名称が入っていたとします。 そして,C1のセルがコード入力欄,D1のセルが商品名称(アンサー)を出したいセルという設定で・・・。 この場合,D1のセルに =vlookup(C1,A1:B5,2,TRUE) と入力するとアンサーとして商品名が出てくるはずです。 関数の簡単な説明として C1は検索したい値,A1:B5は検索したい情報テーブル,2はアンサーとして出したいデータテーブルの列(左端から数えて) TRUEは同一の値を検索するという意味です。 関数ウイザード(fx)を起動してやってみると,簡単に出来ます。 ちょっと説明がうまく出来なくてすいません。理解して頂けたでしょうか・・・。
その他の回答 (3)
- kbonb
- ベストアンサー率51% (254/492)
こんにちは 以下のページがご参考になるのでは? 指定したコードに対する製品名や金額を求める (VLOOKUP関数) http://support.microsoft.com/intl/japan/support/kblight/T002/3/00.htm
お礼
ありがとうございます MS社のホームページに解説ページが あったとは・・・。知らなかったです(^^; これから 少しは自分で関数とか勉強したいと 思います☆
- Raistlin
- ベストアンサー率63% (65/102)
あとで気がつきました。 よく読めば違うところは1個じゃないですね。 私のPCのヘルプによればvlookup関数の4つ目の引数は、falseが正解です。 多分イージーミスだと思いますが。 お仕事に使われるのだと思いますので、よく関数のヘルプを読んで使ってくださいね。>hemaさん
- Raistlin
- ベストアンサー率63% (65/102)
あら、出遅れたようで。 まあ、1個だけ違うところ(該当商品が無い時のメッセージ)があるので紹介させてください。 +++++++++++++++++++++ 下のようにA6からB11に一覧表があるとき。 A B ----------------------- 6 | 104 カッターナイフ 7 | 105 はさみ 8 | 106 のり 9 | 107 ホッチキス 10| 108 定規 11| 109 修正液 セルA3をコード入力欄、セルB3を商品名表示欄に。 また、セルB4を予備の計算欄に使います。 セルB3に =IF(ISNA(B4),"該当する商品が見つかりません",B4) セルB4 =VLOOKUP(A3,$A$6:$B$11,2,FALSE) の式を入力します。
お礼
ありがとうございます。 もうFAXの紙ベースで「B」と「8」の 判断がつかず両方で商品名を探し出す 無駄な時間がなくなって本当に嬉しいです!! >>会社で先輩と感動しながら >>活用しまくってます☆ >>友達にもメールでお知らせしまくりました(笑)
お礼
ありがとうございます。 詳しく引数の説明とかありましたので すごく助かりました!! もう めちゃくちゃ活用できました!! マスタ作りには多少時間がかかりましたが あの、アナログな作業から解放されました!! >>多少 重くなりましたがブックリンクとかで >>ガンガンに使いまくってます☆ >>次の月次〆が楽しみです(*^-^*) >>問合せ対応もラクチンです☆