- ベストアンサー
エクセル 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
- みんなの回答 (5)
- 専門家の回答
質問者が選んだベストアンサー
VLOOKUPの場合は =VLOOKUP(月日のセル,表の絶対参照範囲,SEARCH("ア"," アイウ"),TRUE) "ア"の部分はセルを参照にしてください。 要はア=2,イ=3,ウ=4への置き換えをSERACH関数で行えば可能です。 ただ、検索キーが月日の為、年の部分を注意してください。 表示されないだけで入力時の年が設定されていますので 思わぬ結果が出る可能性が有ります。
その他の回答 (4)
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),"")
お礼
何度もありがとうございます。 #1のmshr1962さんに教えていただいたやり方で、 うまくいきました。 本当にありがとうございました。
- mshr1962
- ベストアンサー率39% (7417/18945)
#1のmshr1962です。 ア,イ,ウでなく0,1,2でしたら、単純に =VLOOKUP(月日のセル,表の絶対参照範囲,数字のセル+2,TRUE) でできます。 数字のセルに0,1,2を入れれば表示の内容も変化します。
お礼
うまくいきました。 どうもありがとうございます。 助かりました~。
今逆質問させていただいているのは、ANo.#1さんの方法を具体化する線に沿っています。 すみません、質問の項目を2つ忘れていました。 4. 6/16~9/19までは15 25 35 で宜しかったですか? 5. 日付は2003年1月1日~2003年12月31日までのデータということで宜しかったでしょうか。
お礼
ありがとうございます。 4.15 25 35 で良いです。 5.2004年です。 2つのセルにそれぞれ、月日(例:2/4)と コード番号(例:1)を入力したら、(例:20)を 返したいのです。 よろしくお願いいたします。
逆質問させてください。 1. B1:D1は「ウ、イ、ア」など順不同、または「ア、 、ア」など空白セルも含まれたり重複もあったりしますか 2. 1/1~6/15までで「ウ」なら何が返ってほしいですか 3. 9/20~12/31までで「イ」なら何が返ってほしいですか それによって方法が違ってくると思いますので。
お礼
ありがとうございます。 少し訂正させてください。 ア、イ、ウではなく、0、1、2です。 順もこのままで、空白セルはありません。 2.30 3.22 です。よろしくお願いいたします。
お礼
ご回答ありがとうございます。 少し訂正させてください。 ア、イ、ウではなく、0、1、2でした。