幼稚園時代「何組」でしたか?

エクセル初心者です。
考えて、下記のような式を入力したのですが、どうしても「入力した式が正しくありません」と表示されて、入力できません。。 どこが間違っているのか、もう1時間ほど悩んでいるのですが、全く思いつきません。。。
どこが間違っているのか、どのように修正すればよいのか、ご指摘いただけないでしょうか。

=IF(C23<100000000,0,IF(C23<200000000,0.01,IF(C23<300000000,0.011,IF(C23<400000000,0.012,IF(C23<500000000,0.013,IF(C23<600000000,0.014,if(C23<700000000,0.015,if(C23<800000000,0.016,IF(C23<900000000,0.017,IF(C23<1000000000,0.018,IF(C23<1100000000,0.019,0.02))))))))))))

また後学のため、なぜエラーになるのか教えていただければ幸いです。

どうぞよろしくお願いいたします。

A 回答 (5件)

No1です。



Excel2007では")"を1つはずせばエラーが出ませんでした。
他の方の書き込みをみてExcel2003で試したところエラーになりました。
バージョンの違いで今回のエラーの出方が違うようです。
失礼しました。
    • good
    • 0

IF関数のネストは8個までなのでエラーです。



一例です。
=LOOKUP(INT(C23/10^8),{0,1,2,3,4,5,6,7,8,9,10,11},{0,0.01,0.011,0.012,0.013,0.014,0.015,0.016,0.017,0.018,0.019,0.02})
    • good
    • 0

>")"をひとつはずしてみたのですが、同じエラーがでてしまい。


他に何か考えられる可能性ありましたら、教えていただけないでしょうか。

提示された数式でエラーが出るのは、すでに回答があるように最後のカッコが1つ多いためですが、最後のカッコを外してもエラーが出るなら、ご使用のエクセルのバージョンが2007よりも前のバージョンではないでしょうか?

この場合は、数式のネストの制限にかかりますので(7レベルまで)数式に工夫が必要となります。

今回のケースでしたらLOOKUP関数で配列定数を使用した以下のような数式にするのがお勧めです。

=LOOKUP(C23,{0,100000000,200000000,300000000,400000000,500000000,600000000,700000000,800000000,900000000,1000000000,1100000000},{0,0.01,0.011,0.012,0.013,0.014,0.015,0.016,0.017,0.018,0.019,0.02})
    • good
    • 0

if文は8個までしかネスト出来ません。


ざっと見たところ、12個あるので多すぎます。

規則性のあるところを計算式に置換する手があります。
=IF(C23< 100000000,0,
IF(C23< 200000000,0.01,
IF(C23>=1100000000,0.02,
0.01+(C23/100000000000-0.002)
)))
※実際には1行で書いてください

あるいは、こういう物はテーブルを作っておき、vlookupを使うものでしょう。

(画像参照)
「IF構文で、「正しくありません」が表示さ」の回答画像2
    • good
    • 0

最後の")"が1つ多いのでエラーになっています。


理由は、")"で閉じないと文法エラーになるから?ですかね?

この回答への補足

こんにちは。お世話になります。ご回答ありがとうございます。
")"をひとつはずしてみたのですが、同じエラーがでてしまい。。
他に何か考えられる可能性ありましたら、教えていただけないでしょうか。

どうぞよろしくお願いいたします。

補足日時:2011/07/08 12:20
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!