Excel の数式が「引数が多すぎます」で失敗する

Excel の数式が「引数が多すぎます」で失敗する

Excel から、数式の引数が多すぎるというメッセージが表示されましたが、複数の IF に関するチュートリアルではこのパターンに従っています。私の数式は次のとおりです。

=IF(F5="Credit", (E5*0.5), IF(F5="Debit", (E5*0.1)), IF(F5="Cash", (E5*0.2)), IF(F5="Adv.", (E5*0.1))

私がやっていることは、セルに「クレジット、デビット、現金、または前払い」のテキストが前のセルにあるかどうかを確認して、特定のパーセンテージを適用することです。

編集: スコットさん、ありがとう。とても助かりました!

答え1

Excel の数式をデバッグする際の最初のルールは、括弧をチェックすることです。式には 8 つの左括弧 (つまり )(と 7 つの右括弧 (つまり )があります)。したがって、これは間違っています。

Excel の数式をデバッグする際の 2 番目のルールは、括弧をチェックすることです。

=IF(F5="Credit", (E5*0.5), IF(F5="Debit", (E5*0.1)), IF(F5="Cash", (E5*0.2)), IF(F5="Adv.", (E5*0.1))
    ↑---------↑  ↑------↑  ↑----------------------↑  ↑---------------------↑  ↑---------------------↑

5つの引数で呼び出していますIF。ドキュメントを読んだらおわかりのように、IF3つの引数で呼び出します。コツはIF(boolean, <value-if-true>, <value-if-false>)<value-if-true>そして<value-if-false> 呼び出しも可能ですIF。内側から外側に向かって式を構築すると役立つかもしれません。

答え2

() をたくさん使っていて、偽の場合の値を指定していない場合は、数式の最後に ) をいくつか移動し、偽の場合の値を少なくとも 1 つ記述する必要があります。F5 が空の場合、または記述したすべての値と異なる場合です。
数式を修正し、偽の場合の値に "" を使用すると、空のセルが返されます。

=IF(F5="Credit", (E5*0.5), IF(F5="Debit", (E5*0.1), IF(F5="Cash", (E5*0.2), IF(F5="Adv.", (E5*0.1),""))))

例えば:
IF(F5="Debit", (E5*0.1))
最後の)を数式の最後に移動しました
ネストされた if 関数

関連情報