Вопрос или проблема
У меня есть таблица, и мне нужна формула, которая даст один из трех возможных результатов (хорошо, нейтрально, плохо) на основе данных из двух ячеек. MTD и YTD в пределах бюджета будет хорошо, MTD в пределах бюджета и YTD ниже (и наоборот) будет нейтрально, а MTD и YTD ниже бюджета будет плохо.
Мой бюджет составляет 83%. В моей таблице MTD находится в D1, а YTD в F1. Я использую символы улыбки как хорошо, нейтрально и плохо (CHAR 74,75,76).
Я сделал быструю попытку и получил грубую версию, которая работает. Вероятно, это не лучшее решение, поэтому надеюсь, кто-то предложит более элегантное решение, но попробуйте это:
=IF(AND($B$2<=$B$1,$B$3<=$B$1),"Good",IF(AND($B$3>$B$1,$B$2>$B$1),”Bad”, “Neutral”))
B1 = 0.83 (просто мое значение для бюджета)
B2 = значение YTD, введенное пользователем
B3 = значение MTD, введенное пользователем
Обратите внимание, что здесь нет кода для обработки ошибок пользователя (значения, отличные от чисел, и т. д.) …
Надеюсь, это поможет хотя бы немного,
Вот хитрый способ (который может считаться элегантным).
Я предположу, что < 83
– это “хорошее” условие. Используйте эту формулу:
=CHOOSE((D1<83)+(F1<83)+1, "bad", "neutral", "good")
Логические выражения, такие как D1<83
, оцениваются в одно из логических значений
TRUE
и FALSE
, которые численно равны 1 и 0 соответственно.
Сложив (D1<83)+(F1<83)
, мы получаем количество критериев,
находящихся в хорошем состоянии:
0 (ни один), 1 (ровно один; т.е. один или другой), или 2 (оба).
Добавьте 1, чтобы получить число, равное 1, 2 или 3. Затем используйте
=CHOOSE(n, value1, value2, value3, ...)
чтобы получить value
, соответствующее вычисленному числу n
.
Вот некоторые результаты тестирования:
D F результат формулы
17 42 good
17 99 neutral
99 42 neutral
99 99 bad
У меня была похожая проблема с датами, и я использовал вложенные команды IF. E2 – это дата истечения срока действия лицензии. Я хотел получить предупреждение за 60 дней до обновления и предупреждение о истекшей лицензии.
=IF(TODAY() <E2, IF(DATEDIF(TODAY(),E2,"d")<60,"RENEW","VALID"),"EXPIRED")
Ответ или решение
Вопрос, связанный с формулами условного оператора IF в Excel, является довольно распространённой задачей, особенно когда нужно учитывать несколько критериев и возможных результатов. В данном случае, ваша цель – оценить два показателя: текущий месяц (MTD) и текущий год (YTD) в рамках бюджета, и на основе их значений вывести одно из трех состояний: "хорошо", "нейтрально" или "плохо". Вот как это можно сделать с помощью различных подходов:
Первый подход: Использование формулы IF с вложенными условиями
Этот метод является довольно прямолинейным и позволяет последовательно проверять каждое из условий.
=IF(AND(D1>=0.83, F1>=0.83), CHAR(74), IF(AND(D1<0.83, F1<0.83), CHAR(76), CHAR(75)))
- CHAR(74) обозначает "хорошо" 😊
- CHAR(75) означает "нейтрально" 😐
- CHAR(76) касается "плохо" 😞
Второй подход: Использование функции CHOOSE
Этот подход более элегантен благодаря своей компактности и подходит для тех, кто предпочитает лаконичные решения.
=CHOOSE((D1>=0.83)+(F1>=0.83)+1, CHAR(76), CHAR(75), CHAR(74))
Рассмотрим, как работает это решение:
- Логические выражения, такие как
D1>=0.83
, оцениваются как TRUE или FALSE, что в числовом эквиваленте равно 1 или 0 соответственно. - Сложением
(D1>=0.83)+(F1>=0.83)
вы получаете количество показателей, соответствующих условиям "хорошо". - Функция
CHOOSE
позволит выбрать одно из трех значений в зависимости от результата сложения.
Оптимизация и улучшение формулы
Убедитесь, что ваши данные вводятся правильно и соответствуют числовому формату. Также, полезно добавлять проверки на ввод данных, чтобы избежать ошибок, таких как ввод текста вместо чисел.
Этот подход эффективно решает поставленную задачу и позволяет обработки данных в режиме реального времени, что особенно ценно для принятия стратегических решений. Используя данные методы, вы сможете быстро и точно оценить состояние ваших финансовых показателей.
Для получения максимальной пользы от данного руководства, убедитесь, что ваши деловые процессы оптимизированы под использование Excel, что обеспечит не только точность, но и актуальность ваших бизнес-аналитических отчетов.