Excel vba case
Автор Павел Балунов задал вопрос в разделе Другие языки и технологии
вопрос по "множественному" ЕСЛИ в логических формулах Excel 2007 и 2010 и получил лучший ответ
Ответ от Алексей Матевосов (AlexM)[гуру]
Ваш файл 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 Так можно реализовать функции И и ИЛИ
Найти аналог caseswitch?
просто сделай подругому... по 50 шт выщитывай
100 вложенных "ЕСЛИ"??? афигеть... попробуй другой подход (вспомогательные ячейки, список значений... хз, не видя полностью задачи подсказать трудно) ну или ВБ.
Точно, надо сделать по-другому. Иначе, если вдруг какому-то пользователю этого Самого Калькулирующего В Мире Калькулятора вдруг потребуется какой-нибудь другой размер публикации, то он будет автора просить еще Ифов подбросить? Замечательная прикладуха. Гарантирует вечную занятость. 🙂
Решение для автора: перепиши формулу на VBA.
чтобы подсказать - надо видеть.
Выкладываете свой файл + подробные условия скидки