- ベストアンサー
EXCELの数式について教えて下さい
=IF(ISBLANK(H2)," ",IF(H2>1000,3000+6*700+6*(H2-1000),IF(H2>300,3000+7*(H2-300),"3000"))*65%) 上記の数式は正しくありませんか? H2セルに何らかの数値が入っている場合は「IF(H2>1000,3000+6....」以降の計算を行い、その結果が 隣のセル(I2)に出て、空白の場合隣のセルに空白で返す、ということをさせたいのですが、この数式ですとどうしても「#VALUE!」が返ってきてしまいます。 何か良い方法はないでしょうか?
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
H2 の値が文字列の場合に起こり得ます。 " " (半角スペース1文字) であっても同様です。 空白は "" です。式中の " " も "" に 修正されたほうがよろしいでしょう。 なお、空白および文字列両者とも対応させるには 次の式を適用されるとよいでしょう。 =IF(ISNUMBER(H2),IF(H2>1000,3000+6*700+6*(H2-1000),IF(H2>300,3000+7*(H2-300),"3000"))*65%,"")
その他の回答 (1)
- ARC
- ベストアンサー率46% (643/1383)
回答No.1
えっと、手元の環境(Excel2000)でやってみましたが、正しく計算されます。 というわけですので、数式の方には問題は無いと思われます。 しいて言えば、"3000"の部分なんですが、ひょっとしたらExcelのバージョンや設定によっては、"文字列"×数値の計算ができないのかも ってことで、"3000"→3000, 65%→0.65 とすると、動くかもしれません。
お礼
ありがとうございました。 目のうろこがとれたようでした。