• ベストアンサー

EXCELの関数でどう記述すれば良いでしょうか?

VLOOKUPを使って出来るかと思ったのですが上手く行きません。 ・J列を参照して2行目が 300 なら(K2-N2)*0.05+200) ・J列を参照して2行目が 0 なら(K2-N2)*0.03+150) と言う様にしたいのですが、どの様に記述したら良いでしょうか? どうぞ宜しくお願い致します。

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

  • ベストアンサー
  • Trick--o--
  • ベストアンサー率20% (413/2034)
回答No.1

=if(index(J:J,2,1)=0,(K2-N2)*0.03+150,if(index(J:J,2,1)=300,(K2-N2)*0.05+200,"0でも300でもない")) 「J列を参照して2行目が」を簡単に言うと「セルJ2が」になるので =if(J2=0,(K2-N2)*0.03+150,if(J2=300,(K2-N2)*0.05+200,"0でも300でもない")) 空白も0として扱ってしまうのでさらに外側にIFをつけて =IF(ISBLANK(INDEX(J:J,2,1)),"空白",IF(INDEX(J:J,2,1)=0,(K2-N2)*0.03+150,IF(INDEX(J:J,2,1)=300,(K2-N2)*0.05+200,"0でも300でもない"))) =IF(ISBLANK(J2),"空白",IF(J2=0,(K2-N2)*0.03+150,IF(J2=300,(K2-N2)*0.05+200,"0でも300でもない")))

asdfg456
質問者

お礼

丁寧なな解説付きで教えて頂いてありがとうございます。 ifを使う事に頭が回りませんでした。 シート2に表を作って数式を入れて、参照させると 式ではなくて数字が返ってくるので困っていました^^; まだまだ勉強不足ですが、精進したいと思います。 ありがとうございました。

関連するQ&A