Другие языки программирования и технологии

вопрос по "множественному" ЕСЛИ в логических формулах Excel 2007 и 2010

готовлю "калькулятор" коммерческого предложения для клиентов, которую они сами смогут заполнять. проблема с формулой, определяющей величину скидки. Ячейка "Скидка" зависит от трех других ячеек: "Формат рекламы", "Размер публикации", "Количество публикаций". Всего получается 100 возможных значений "скидки". Я использовал формулу "ЕСЛИ" и "И". Но после 64-ой вложенной формулы Excel отказался читать оставшиеся 36-ть (как позже выяснилось - у Excel такое (64 шт.) ограничение на множественные формулы:-( ). Подскажите как обойти данную проблему?
Ваш файл 2003 Эксель открыть не получается.
Проблема вложенных функций ЕСЛИ в 2003 еще острее. Допускается всего до 7 вложений.
Поэтому давно придуман способ обхода этого ограничения. Этот способ подойдет, если в вашей задаче возвращаемые значения числа.
Пример. Если в А1=1 возвращаем 10; если в А1=2 возвращаем 15; если в А1=3 возвращаем 25; если в А1=4 возвращаем 150; если в А1=5 возвращаем 105; если в А1=6 возвращаем 55; если в А1=7 возвращаем 75; если в А1=8 возвращаем 44; если в А1=9 возвращаем 240; если в А1=10 возвращаем 188
Формула без ЕСЛИ будет такой =(A1=1)*10+(A1=2)*15+(A1=3)*25+(A1=4)*150+(A1=5)*105+(A1=6)*55+(A1=7)*75+(A1=8)*44+(A1=9)*240+(A1=10)*188
Однако ограничение все таки есть. Длина формулы должна быль не более 1024 символа
Ну и как правильно заметили, подобные задачи надо решать макросом или делать собственные функции.

Дополнение. Если А1 =1 или А1=33 возвратить 10 . Пишется так ((A1=1)+(A1=33))*10 Так можно реализовать функции И и ИЛИ
Алексей Михальевич
Алексей Михальевич
27 337
Лучший ответ
чтобы подсказать - надо видеть.
Выкладываете свой файл + подробные условия скидки
Владислав Тор
Владислав Тор
93 126
Найти аналог case\switch?
Andrey Krachun
Andrey Krachun
29 336
Точно, надо сделать по-другому. Иначе, если вдруг какому-то пользователю этого Самого Калькулирующего В Мире Калькулятора вдруг потребуется какой-нибудь другой размер публикации, то он будет автора просить еще Ифов подбросить? Замечательная прикладуха. Гарантирует вечную занятость. :-)

Решение для автора: перепиши формулу на VBA.
Nshan Hovhannisya
Nshan Hovhannisya
6 782
100 вложенных "ЕСЛИ"??? афигеть.. . попробуй другой подход (вспомогательные ячейки, список значений.. . хз, не видя полностью задачи подсказать трудно) ну или ВБ.
просто сделай подругому.. . по 50 шт выщитывай