• ベストアンサー

Excel 2007のVLOOKUP関数について

Excel 2007のVLOOKUP関数について教えてください。 A列に(大根、人参、キャベツ)の3項目をプルダウンメニューで 選べるように設定します。 A列にある項目を選択した時に B列にそれぞれの数字が自動で表示されるように 設定したいと思います。 大根→1 人参→2 キャベツ→3 A列のプルダウンメニューは「データ入力規則」の元に値に 直接項目を入力します。 VLOOKUP関数を使用すると思いますが、 どのような方法で使用すればよいのかわかりません。 教えてください。

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

  • ベストアンサー
  • merlionXX
  • ベストアンサー率48% (1930/4007)
回答No.5

その三項目だけでよいなら何も別途リストを用意しなくとも =MATCH(A1,{"大根","人参","キャベツ"},0) でよいかと。 (上記は検査値がA1にある例です)

hyogara777
質問者

お礼

ご回答ありがとうございました。参考にさせて頂きます。

その他の回答 (6)

  • mshr1962
  • ベストアンサー率39% (7417/18945)
回答No.7

材料に対して上から1からの数値連番でいいなら =MATCH(A1,材料のセル範囲,0) で材料の範囲内での行数を返します。 1からの数値連番で無い場合は VLOOKUP関数のやり方ですね。

hyogara777
質問者

お礼

ご回答ありがとうございました。参考にさせて頂きます。

  • imogasi
  • ベストアンサー率27% (4737/17069)
回答No.6

質問のようなことが書けるまで行っていて、あとWEBででもVLOOKUP関数を照会し、答えが見つけらなったのかな。VLOOKUP関数を知らない全くの初心者は別にして、なぜこんなことを質問するのかというレベルの質問。 入力規則を使ったために、惑わされている部分が発生したのかな。 プルダウンではF列をリスト範囲指定に使い、数字列をG列に対応して並べて、VLOOKUP関数の場合はF,G列両方$F$1:$G$3などと 検索表指定に使えばよい。 検索表の範囲$F$1:$G$3を名前定義をしてしまう方法もある。 ーー 別途のVLOOKUP関数の使い方 =IF(A1="","",VLOOKUP(A1,{"大根、",1;"人参",2;"キャベツ",3},2,FALSE)) 表を式の中に定義する。項目が多いと使わないが。 大根→1 人参→2 キャベツ→3 列の横行にはカンマで区切り、改行にはセミコロンを使って表を表せばよい。最初最後は{}で囲む。配列です。 検索表範囲は (1)絶対番地で範囲指定 (2)名前定義の名前指定 (3)配列で直接定義 がある。 入力規則のリストの場合も(1)-(3)と同じパターンの表し方がある。

hyogara777
質問者

お礼

ご回答ありがとうございました。参考にさせて頂きます。

  • Rin-u_u
  • ベストアンサー率35% (6/17)
回答No.4

A1~A3にプルダウンメニューがあるとして、 大根→1 人参→2 キャベツ→3 という対応表(作業列)を作成します。 [C]    [D] 大根    1 人参    2 キャベツ  3 式 =VLOOKUP(A1, C1:D3, 2, FALSE) 式 =VLOOKUP(A1, C1:D3, 2, FALSE) の意味 A1 は調べたい品名、 C1:D3 は調べるテーブルの範囲、 2 は表の2 列目の数字を求めるため、 FALSE は 近似検索するとき:TRUE 近似検索でなく完全に一致するものを探すとき:FALSE (原理的にはB列の品名の文字コードの昇順に並べてあればFALSEは省略可能ですが 現実として単純な並べ替えでは文字コードの順に並んでくれません) VLOOKUPはこのように、テーブル(表)から何らかの情報を取り出すことに使われます。

hyogara777
質問者

お礼

ご回答ありがとうございました。参考にさせて頂きます。

  • hallo-2007
  • ベストアンサー率41% (888/2115)
回答No.3

最初に 別シート(Sheet2にでも)に対応の表を作ります。  A   B 大根   1 人参   2 キャベツ 3 ・・・ 検索値(プルダウンで入力している)が A1セルの場合 =VLOOKUP(A1,Sheet2!A:B,2,FALSE) とか =VLOOKUP(A1,Sheet2!A$1:B$3,2,FALSE) となります。

hyogara777
質問者

お礼

ご回答ありがとうございました。参考にさせて頂きます。

  • Tiffa9900
  • ベストアンサー率31% (68/216)
回答No.2

予め基本情報となるテーブルを作成する。 例えば、 C1~D3を利用して、以下のテーブルを作成 大根  1 人参  2 キャベツ 3 B1を「=VLOOKUP(A1,$C$1:$D$3,2,0)」とする。 B2は「=VLOOKUP(A2,$C$1:$D$3,2,0)」とする。 $C$1:$D:$3と$をつけているのは、B1をコピーして B2に貼り付けたときに、C1:D3だと、C2:D4になってしまうのを避ける為。 同様の考えで、列すべてを基本情報のテーブルと考え、C:DとかにしてもOKです。 また、必ずしも同一シートでなくていいので、私の場合、基本情報のテーブルは別シートに作ったりします。 =VLOOKUP(A1,基本情報!A:B,2,0) 「基本情報」シートの、A,B列を基本情報のテーブルとする例です。

hyogara777
質問者

お礼

ご回答ありがとうございました。参考にさせて頂きます。

  • mu2011
  • ベストアンサー率38% (1910/4994)
回答No.1

■仮に対応リストを別シート(sheet2)に作成    A  B 1 大根  1 2 人参  2 3 キャベツ 3 ~   10 xxx  m ■B列に=IF(A1<>"",VLOOKUP(A1,sheet2!$A:$B,2,FALSE),"")

hyogara777
質問者

お礼

ご回答ありがとうございました。参考にさせて頂きます。

関連するQ&A