Вы ввели слишком много аргументов ошибка excel IF

#excel

#excel

Вопрос:

Я пытаюсь создать формулу IF, но я получаю сообщение об ошибке, что у меня слишком много аргументов. Есть идеи, как это исправить?

=ЕСЛИ (BZ190= $ C $ 163,$ C $ 163, ЕСЛИ(BZ190=$ C $ 163 * $ C $ 165,$ C $ 163 * $ C $166, ЕСЛИ(BZ190=$ C $ 163 * $ C $ 166,$ C $ 163 * $ C $ 167, ЕСЛИ(BZ190= $ C $ 163 * $ C $ 167, Z190 = $ C $ 163 * $ C $ 168 , ЕСЛИ (BZ190=$C $163 *$C $168,$ C $ 163 *$ C $169, ЕСЛИ(BZ190=$C $ 163 *$ C $ 169,$ C $163 *$C$170, ЕСЛИ(BZ190=$C $ 163 *$ C $170,$ C $ 163 *$ C$171, ЕСЛИ(BZ190=$ C $ 163 * $ C $ 171, $ C $ 163 *$ C $ 172, ЕСЛИ(BZ190 =$C $163 *$C $172,$ C $163 *$C $ 173, ЕСЛИ (BZ190=$ C $ 163 *$C $ 173,$C $ 163 *$C $174, ЕСЛИ(BZ190=$C $ 163 *$ C $174,$C $ 163 *$C$175, ЕСЛИ(BZ190=$C $ 163*$C$175,$C$163), ЕСЛИ(И(СУММА(BZ190:BZ $ 190)-ОКОЛО$168)<0,BZ190=»»), $ C $163*$C$165,»»)))))))))))

Комментарии:

1. Я подозреваю, что это должно быть =IF(BZ190=$C$163,$C$163,IF(BZ190=$C$163*$C$165,$C$163*$C$166,IF(BZ190=$C$163*$C$166,$C$163*$C$167,IF(BZ190=$C$163*$C$167,Z190=$C$163*$C$168,IF(BZ190=$C$163*$C$168,$C$163*$C$169,IF(BZ190=$C$163*$C$169,$C$163*$C$170,IF(BZ190=$C$163*$C$170,$C$163*$C$171,IF(BZ190=$C$163*$C$171,$C$163*$C$172,IF(BZ190=$C$163*$C$172,$C$163*$C$173,IF(BZ190=$C$163*$C$173,$C$163*$C$174,IF(BZ190=$C$163*$C$174,$C$163*$C$175,IF(BZ190=$C$163*$C$175,$C$163,IF(AND((SUM(BZ190:BZ$190)-CA$168)<0,BZ190=""),$C$163*$C$165,"")))))))))))))

2. Не могли бы вы, пожалуйста, сказать мне, что вы изменили? Потому что это не выдает мне ошибку, но работает не так, как должно

3. Перед последней функцией IF у вас была закрывающая скобка, которой там не должно было быть.

4. Я подозреваю, что если бы вы представили свою основную проблему с образцами данных и ожидаемыми результатами, было бы возможно гораздо более простое (и легко поддерживаемое) решение.

Ответ №1:

Предпоследнее предложение if выглядит следующим образом:

 IF(BZ190=$C$163*$C$175,$C$163),
                             ^
                             |
                             | bracket is obsolete
  

В конце не должно быть скобки, она должна быть просто:

 IF(BZ190=$C$163*$C$175,$C$163,
  

Но здесь у меня есть еще один момент: представьте, что в течение полугода или в течение года вам нужно что-то изменить. Как вы узнаете, что все эти вещи означают? Поэтому я бы посоветовал вам использовать имена, что-то вроде:

 $C$163 equals "interest_rate"
$C$165 equals "student_income"
...
  

Таким образом, ваша формула станет чем-то вроде:

 IF(BZ190=interest_rate,interest_rate,
  IF(BZ190=interest_rate * student_income, ...
  

Это будет намного понятнее для чтения и поддержки. И, о, пока я не забыл: запись формулы в многострочном формате (одно предложение if на строку) также повышает удобочитаемость и ремонтопригодность.

Комментарии:

1. Большое спасибо, Доминик!