• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:VLOOKUPでもう一工夫必要なのですが・・・)

VLOOKUPでもう一工夫必要なのですが・・・

このQ&Aのポイント
  • 表2を作成する際に、表1のデータを元に単価を引っ張ってきたいです。ただし、表1には単価1と単価2があり、基本的には単価1を使用します。ただし、単価2には「0」以外の金額が入っている場合は、単価2の金額を使用します。
  • 最終的には、引っ張ってきた単価と数量を掛け合わせて合計金額を求めます。
  • VLOOKUP以外にも、他の方法で問題を解決することも考えています。良い方法があれば教えてください。

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

  • ベストアンサー
  • tom04
  • ベストアンサー率49% (2537/5117)
回答No.3

こんばんは! 一例です。 オーソドックスに考えて I3セルの数式を =IF(F3="","",IF(VLOOKUP(F3,$A$3:$D$22,4,0)<>0,VLOOKUP(F3,$A$3:$D$22,4,0),VLOOKUP(F3,$A$3:$D$22,3,0))) としてオートフィルで下へコピーしてはダメですか? 以上、参考になれば良いのですが 他に良い方法があれば 読み流してくださいね。m(__)m

pritzman
質問者

お礼

ご回答ありがとうございました。 コレですね! 私の考え方で正解だったみたいですが、数式が書けませんでした・・・( > < ) なるほど、こういう書き方をするのですね。 次からは自分で出来そうです。 大変勉強になりました。 また機会がございましたらよろしくお願いいたします。

その他の回答 (2)

  • keithin
  • ベストアンサー率66% (5278/7941)
回答No.2

特に難しくせずに, =IF(INDEX($D$2:$D$22,F3),INDEX($D$2:$D$22,F3),INDEX($C$2:$C$22,F3))  D列に有ればD列,無ければC列 とかでいいのでは。

pritzman
質問者

お礼

ご回答ありがとうございました。 でも、これでは正しい値が出てこないようです・・・

回答No.1

基本的に食品名:=vlookup(食番,表1,1,FALSE) のようになりますが、単価が常に単価1なら、第3引数が2ですね。 それを単価2がゼロでないときには3に変えるのですから、第3引数 を2+(単価2<>0)のようにします。カッコ内は単価2がゼロでないと いう論理式でTRUE/FALSEの論理値が返りますが、四則演算に代入す るとTRUEは1でFALSEは0として扱います。

pritzman
質問者

お礼

ご回答ありがとうございました。 参考になりました。

関連するQ&A