• ベストアンサー

エクセル VLOOKUP?INDEX?別表の参照。

エクセルで別表を参照したいのですが、 例えば下記のような表で、A列は、月日を表し、 1/1~6/15までは、アなら10、イなら20を 9/20~12/31までは、アなら12を、ウなら32を 返したいのです。 どうしたらよいのでしょうか?   A   B   C   D 1     ア   イ   ウ 2 1/1  10   20  30 3 6/16  15  25   35 4 9/20  12  22   32

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

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

VLOOKUPの場合は =VLOOKUP(月日のセル,表の絶対参照範囲,SEARCH("ア"," アイウ"),TRUE) "ア"の部分はセルを参照にしてください。 要はア=2,イ=3,ウ=4への置き換えをSERACH関数で行えば可能です。 ただ、検索キーが月日の為、年の部分を注意してください。 表示されないだけで入力時の年が設定されていますので 思わぬ結果が出る可能性が有ります。

topspin
質問者

お礼

ご回答ありがとうございます。 少し訂正させてください。 ア、イ、ウではなく、0、1、2でした。

その他の回答 (4)

noname#9284
noname#9284
回答No.5

ANo.#2とANo.#3です。 B2に以下の数式を入れ、B2ををD4までの範囲にコピーしてみてください。 =IF(COUNT($A2,B$1)=2,(B$1+1)*10+VLOOKUP($A2,{37987,0;38154,5;38250,2},2),"")

topspin
質問者

お礼

何度もありがとうございます。 #1のmshr1962さんに教えていただいたやり方で、 うまくいきました。 本当にありがとうございました。

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

#1のmshr1962です。 ア,イ,ウでなく0,1,2でしたら、単純に =VLOOKUP(月日のセル,表の絶対参照範囲,数字のセル+2,TRUE) でできます。 数字のセルに0,1,2を入れれば表示の内容も変化します。

topspin
質問者

お礼

うまくいきました。 どうもありがとうございます。 助かりました~。

noname#9284
noname#9284
回答No.3

今逆質問させていただいているのは、ANo.#1さんの方法を具体化する線に沿っています。 すみません、質問の項目を2つ忘れていました。 4. 6/16~9/19までは15  25   35 で宜しかったですか? 5. 日付は2003年1月1日~2003年12月31日までのデータということで宜しかったでしょうか。

topspin
質問者

お礼

ありがとうございます。 4.15 25 35 で良いです。 5.2004年です。 2つのセルにそれぞれ、月日(例:2/4)と コード番号(例:1)を入力したら、(例:20)を 返したいのです。 よろしくお願いいたします。

noname#9284
noname#9284
回答No.2

逆質問させてください。 1. B1:D1は「ウ、イ、ア」など順不同、または「ア、 、ア」など空白セルも含まれたり重複もあったりしますか 2. 1/1~6/15までで「ウ」なら何が返ってほしいですか 3. 9/20~12/31までで「イ」なら何が返ってほしいですか それによって方法が違ってくると思いますので。

topspin
質問者

お礼

ありがとうございます。 少し訂正させてください。 ア、イ、ウではなく、0、1、2です。 順もこのままで、空白セルはありません。 2.30 3.22 です。よろしくお願いいたします。

関連するQ&A