3

Я получаю сообщение от 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))

То, что я делаю, просит, чтобы ячейка проверила, находится ли текст «Кредит, Дебет, Наличные или аванс» в предыдущей ячейке, так что применяется определенный процент.

редактировать: спасибо Скотт, очень помог!

2 ответа2

4

Первое правило отладки формул Excel заключается в проверке скобок.  Ваше выражение имеет восемь левых скобок, т. Е., ( И семь правых скобок, т. Е. ) .  Так что это неправильно.

Второе правило отладки формул Excel - проверка скобок.

=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 с пятью аргументами.  Как вы должны знать из прочитанной документации, вы вызываете IF с тремя аргументами: IF(boolean, <value-if-true>, <value-if-false>) .  Хитрость в том, что <value-if-true> и <value-if-false> также могут быть вызовами IF .  Это может помочь, если вы строите формулу изнутри.

0

Вы пишете, если с большим () и без значения, если false, вы должны переместить некоторое) в конец формулы и, по крайней мере, написать одно значение, если false, когда F5 пусто или отличается от всех значений, которые вы написали ,
Я исправил вашу формулу и использовал "" для значения, если false, то он вернет пустую ячейку:

=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 = "Дебет", (E5 * 0,1))
Я перенес последнее) в конец формулы
Вы можете взглянуть на вложенную функцию if

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .