• ベストアンサー

エクセル2010 商品リストを参照したい

注文書作成時、商品リストを参照して入力を簡略化したいです。 注文書の商品名を入れると、それに連動して 商品リストの商品コード、得意先コードも表示されるようにしたいです。 商品名は入力規則のドロップダウンリストで入力するようにして 入力された文字列を検索値にVLOOKUPを使う?と考えましたが 商品名は文字列のせいか、うまく検索されません。 よい考え方や、関数はありますでしょうか。 宜しくお願い致します。

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

  • ベストアンサー
回答No.1

VLOOKUPで検索可能です。 添付写真の例ですと、 セルE3に「=VLOOKUP(F3,A3:C5,2,FALSE)」 セルG3に「=VLOOKUP(F3,A3:C5,3,FALSE)」 を入れればOKです。 また、F2の品名を入力した時だけ表示するようにするには セルE3「=IF(F3<>"",VLOOKUP(F3,A3:C5,2,FALSE),"")」 セルG3「=IF(F3<>"",VLOOKUP(F3,A3:C5,3,FALSE),"")」 として下さい。

ya333
質問者

お礼

無事解決しました。ありがとうございます。 実際の商品リストは別シートになっている為 範囲の指定の仕方などにミスがあり、うまく検索ができなかったようです。 文字列でもVLOOKUPが使えると分かりました。 また、 > F2の品名を入力した時だけ表示するようにするには ということで教えていただいた方法が大変役に立ちました。 普通にVLOOKUPだけで入力する方法でやったところ 品名入力前のE列G列に #N/A と表示されてしまい、見苦しいと思いました。 自分ではまったく思いつかない実用的な技を教えていただきとても勉強になりました。 ありがとうございます。

その他の回答 (2)

  • KURUMITO
  • ベストアンサー率42% (1835/4283)
回答No.3

回答No2です。F列のデータが先に選ばれるのでしたね。回答No1さんが正解でしょう。 その場合にはVLOOKUP関数を使うことができますね。

ya333
質問者

お礼

2度目のご回答ありがとうございます。 No.2さんの回答も良い勉強のきっかけになりました。

  • KURUMITO
  • ベストアンサー率42% (1835/4283)
回答No.2

お示しの場合のように商品コードを入力したときに商品名や客先コードを表示させるためにはVLOOKUP関数を使うことはできません。 F3セルには次の式を入力しG3セルまで横にドラッグコピーしたのちに下方にもドラッグコピーします。 =IF(COUNTIF($B:$B,$E3)=0,"",IF(COLUMN(A1)=1,INDEX($A:$A,MATCH($E3,$B:$B,0)),INDEX($C:$C,MATCH($E3,$B:$B,0))))

ya333
質問者

お礼

INDEX や MATCH などを使ったことがなく、少し調べてみたのですが 検索値の列が検索範囲の左端列に位置しない場合に使うということでしょうか。 確かに、実際使用する商品リストは商品名が左端にないので 左端が商品名になるようリストを加工して使う予定でした。 加工せず使わなければならない時に便利ですね。 複数の関数を組み合わせるのは、今の自分にはかなり難しいのですが このようなやり方もあると分かり大変勉強になりました。 ありがとうございます。

関連するQ&A