Ваша формула полностью рабочая, не могу представить, почему в Вашем файле он выдает ошибку. В моём файле можете подставить свою формулу и убедиться в этом.
Предлагаю свой вариант:
=ЕСЛИ(ИЛИ(B2>$D$9;C2="Да");B2-B2*$D$8;B2)
Объяснение:
=ЕСЛИ - проверяет, выполняется ли условие, и возвращает одно значение, если оно выполняется, и другое значение, если нет
ИЛИ() - проверяет, имеет ли хотя бы один из аргументов значение ИСТИНА, и возвращает значение ИСТИНА или ЛОЖЬ. Значение ЛОЖЬ возвращается только в том случае, если все аргументы имеют значение ЛОЖЬ.
Ты понимаешь, что для начала стоит сказать , что в паскале несколько видов повторения бывает. В звисимости от видов и разные механизмы. Например цикл пока или цикл с предусловием он называется: while <условие> do begin <тело цикла> end; до тех пора выполныется условие выполняем цикл.
Цикл с постусловием: repeat <тело цикла> until <условие выхода> повторять какие то действия до тех пор пока не это число указанно например не попадет в условие выхода
Ваша формула полностью рабочая, не могу представить, почему в Вашем файле он выдает ошибку. В моём файле можете подставить свою формулу и убедиться в этом.
Предлагаю свой вариант:
=ЕСЛИ(ИЛИ(B2>$D$9;C2="Да");B2-B2*$D$8;B2)
Объяснение:
=ЕСЛИ - проверяет, выполняется ли условие, и возвращает одно значение, если оно выполняется, и другое значение, если нет
ИЛИ() - проверяет, имеет ли хотя бы один из аргументов значение ИСТИНА, и возвращает значение ИСТИНА или ЛОЖЬ. Значение ЛОЖЬ возвращается только в том случае, если все аргументы имеют значение ЛОЖЬ.
Прикрепляю готовый файл :)
Цикл с постусловием: repeat <тело цикла> until <условие выхода> повторять какие то действия до тех пор пока не это число указанно например не попадет в условие выхода
И еще и еще об этом можно много говорить