Функция ЕСЛИ/IF с несколькими переменными и подсчетом
IDK
Дата: Вторник, 20.02.2018, 15:51 |
Сообщение № 1
Группа: Пользователи
Ранг: Прохожий
Сообщений: 9
Репутация:
0
±
Замечаний:
0% ±
Excel 2016
Добрый день, уважаемые форумчане. Однажды вы меня уже выручили, написав для/за меня формулу для переноса значения с изменением формата и удалением лишних символов. Появилась новая задача: нужно проставить, скажем, рейтинг (оценки): A,B,C,D,E,F по результату вычисления двух ячеек со значениями. Пример приложил к теме. Суть кратко: если результат вычисления (B1/A1)*100 >=75, то это A, если (B1/A1)*100 >=60, но меньше 75 - это B, если (B1/A1)*100 >=30, но меньше 60 = С, (B1/A1)*100 >=10, но меньше 30 = D, (B1/A1)*100 >=0,01, но меньше 10 = E, (B1/A1)*100 = 0, то это F. Я пытался все это функцией ЕСЛИ с несколькими условиями задать:Код
=ЕСЛИ((T2/S2)*100=0; "F", ЕСЛИ((T2/S2)*100>=0; "E", ЕСЛИ((T2/S2)*100>=10; "D", ЕСЛИ((T2/S2)*100>=30; "C", ЕСЛИ((T2/S2)*100>=60; "B", ЕСЛИ((T2/S2)*100>=75; "A" ))))))
увы, не сработало (было несколько вариаций формулы). Думал добавить ИЛИ/OR, но, опять таки, безрезультатно. Буду благодарен за помощь и, что более важно!!!, за объяснение, как сделать.
Добрый день, уважаемые форумчане. Однажды вы меня уже выручили, написав для/за меня формулу для переноса значения с изменением формата и удалением лишних символов. Появилась новая задача: нужно проставить, скажем, рейтинг (оценки): A,B,C,D,E,F по результату вычисления двух ячеек со значениями. Пример приложил к теме. Суть кратко: если результат вычисления (B1/A1)*100 >=75, то это A, если (B1/A1)*100 >=60, но меньше 75 - это B, если (B1/A1)*100 >=30, но меньше 60 = С, (B1/A1)*100 >=10, но меньше 30 = D, (B1/A1)*100 >=0,01, но меньше 10 = E, (B1/A1)*100 = 0, то это F. Я пытался все это функцией ЕСЛИ с несколькими условиями задать:Код
=ЕСЛИ((T2/S2)*100=0; "F", ЕСЛИ((T2/S2)*100>=0; "E", ЕСЛИ((T2/S2)*100>=10; "D", ЕСЛИ((T2/S2)*100>=30; "C", ЕСЛИ((T2/S2)*100>=60; "B", ЕСЛИ((T2/S2)*100>=75; "A" ))))))
увы, не сработало (было несколько вариаций формулы). Думал добавить ИЛИ/OR, но, опять таки, безрезультатно. Буду благодарен за помощь и, что более важно!!!, за объяснение, как сделать. IDK
Сообщение отредактировал IDK - Вторник, 20.02.2018, 16:02
Ответить
Сообщение Добрый день, уважаемые форумчане. Однажды вы меня уже выручили, написав для/за меня формулу для переноса значения с изменением формата и удалением лишних символов. Появилась новая задача: нужно проставить, скажем, рейтинг (оценки): A,B,C,D,E,F по результату вычисления двух ячеек со значениями. Пример приложил к теме. Суть кратко: если результат вычисления (B1/A1)*100 >=75, то это A, если (B1/A1)*100 >=60, но меньше 75 - это B, если (B1/A1)*100 >=30, но меньше 60 = С, (B1/A1)*100 >=10, но меньше 30 = D, (B1/A1)*100 >=0,01, но меньше 10 = E, (B1/A1)*100 = 0, то это F. Я пытался все это функцией ЕСЛИ с несколькими условиями задать:Код
=ЕСЛИ((T2/S2)*100=0; "F", ЕСЛИ((T2/S2)*100>=0; "E", ЕСЛИ((T2/S2)*100>=10; "D", ЕСЛИ((T2/S2)*100>=30; "C", ЕСЛИ((T2/S2)*100>=60; "B", ЕСЛИ((T2/S2)*100>=75; "A" ))))))
увы, не сработало (было несколько вариаций формулы). Думал добавить ИЛИ/OR, но, опять таки, безрезультатно. Буду благодарен за помощь и, что более важно!!!, за объяснение, как сделать. Автор - IDK Дата добавления - 20.02.2018 в 15:51
sboy
Дата: Вторник, 20.02.2018, 15:54 |
Сообщение № 2
Группа: Друзья
Ранг: Участник клуба
Сообщений: 2566
Репутация:
724
±
Замечаний:
0% ±
Excel 2010
Добрый день. Оформите формулу в Вашем сообщении в тэги (кнопка fx). Решение готово
Добрый день. Оформите формулу в Вашем сообщении в тэги (кнопка fx). Решение готово sboy
Яндекс: 410016850021169
Ответить
Сообщение Добрый день. Оформите формулу в Вашем сообщении в тэги (кнопка fx). Решение готово Автор - sboy Дата добавления - 20.02.2018 в 15:54
IDK
Дата: Вторник, 20.02.2018, 15:57 |
Сообщение № 3
Группа: Пользователи
Ранг: Прохожий
Сообщений: 9
Репутация:
0
±
Замечаний:
0% ±
Excel 2016
Добрый день. Оформите формулу в Вашем сообщении в тэги (кнопка fx). Решение готово
Так? Я сам сразу не понял, как вы на форуме формулы в виде формул, собственно, оформляете.)
Добрый день. Оформите формулу в Вашем сообщении в тэги (кнопка fx). Решение готово
Так? Я сам сразу не понял, как вы на форуме формулы в виде формул, собственно, оформляете.)IDK
Ответить
Сообщение Добрый день. Оформите формулу в Вашем сообщении в тэги (кнопка fx). Решение готово
Так? Я сам сразу не понял, как вы на форуме формулы в виде формул, собственно, оформляете.)Автор - IDK Дата добавления - 20.02.2018 в 15:57
Che79
Дата: Вторник, 20.02.2018, 16:00 |
Сообщение № 4
Группа: Друзья
Ранг: Старожил
Сообщений: 1649
Репутация:
306
±
Замечаний:
0% ±
2013 Win, 365 Mac
(B1/A1)*100 >=0, но меньше 10 = E, (B1/A1)*100 = 0, то это F.
тут я запутался, два раза равенство нулю для разных значений. Это как?
(B1/A1)*100 >=0, но меньше 10 = E, (B1/A1)*100 = 0, то это F.
тут я запутался, два раза равенство нулю для разных значений. Это как?Che79
Делай нормально и будет нормально!
Ответить
Сообщение (B1/A1)*100 >=0, но меньше 10 = E, (B1/A1)*100 = 0, то это F.
тут я запутался, два раза равенство нулю для разных значений. Это как?Автор - Che79 Дата добавления - 20.02.2018 в 16:00
sboy
Дата: Вторник, 20.02.2018, 16:02 |
Сообщение № 5
Группа: Друзья
Ранг: Участник клуба
Сообщений: 2566
Репутация:
724
±
Замечаний:
0% ±
Excel 2010
Вот такой вариантКод
=ЕСЛИ(B1/A1;ПРОСМОТР(B1/A1*100;{0;10;30;60;75};{"E";"D";"C";"B";"A"});"F")
Вот такой вариантКод
=ЕСЛИ(B1/A1;ПРОСМОТР(B1/A1*100;{0;10;30;60;75};{"E";"D";"C";"B";"A"});"F")
sboy
Яндекс: 410016850021169
Ответить
Сообщение Вот такой вариантКод
=ЕСЛИ(B1/A1;ПРОСМОТР(B1/A1*100;{0;10;30;60;75};{"E";"D";"C";"B";"A"});"F")
Автор - sboy Дата добавления - 20.02.2018 в 16:02
IDK
Дата: Вторник, 20.02.2018, 16:03 |
Сообщение № 6
Группа: Пользователи
Ранг: Прохожий
Сообщений: 9
Репутация:
0
±
Замечаний:
0% ±
Excel 2016
тут я запутался, два раза равенство нулю для разных значений. Это как?
Изменил. Конечно же имелось ввиду всё, что больше нуля, но меньше 10.
тут я запутался, два раза равенство нулю для разных значений. Это как?
Изменил. Конечно же имелось ввиду всё, что больше нуля, но меньше 10.IDK
Ответить
Сообщение тут я запутался, два раза равенство нулю для разных значений. Это как?
Изменил. Конечно же имелось ввиду всё, что больше нуля, но меньше 10.Автор - IDK Дата добавления - 20.02.2018 в 16:03
Che79
Дата: Вторник, 20.02.2018, 16:11 |
Сообщение № 7
Группа: Друзья
Ранг: Старожил
Сообщений: 1649
Репутация:
306
±
Замечаний:
0% ±
2013 Win, 365 Mac
Классические варианты через ВПР() и ИНДЕКС() Код
=ЕСЛИОШИБКА(ВПР(C2;{0;"F":0,01;"E":10;"D":30;"C":60;"B":75;"A"};2);"")
Код
=ЕСЛИОШИБКА(ИНДЕКС({"F":"E":"D":"C":"B":"A"};ПОИСКПОЗ(C2;{0:0,01:10:30:60:75};1));"")
, где С2=(B2/A2)*100
Классические варианты через ВПР() и ИНДЕКС() Код
=ЕСЛИОШИБКА(ВПР(C2;{0;"F":0,01;"E":10;"D":30;"C":60;"B":75;"A"};2);"")
Код
=ЕСЛИОШИБКА(ИНДЕКС({"F":"E":"D":"C":"B":"A"};ПОИСКПОЗ(C2;{0:0,01:10:30:60:75};1));"")
, где С2=(B2/A2)*100 Che79
Делай нормально и будет нормально!
Сообщение отредактировал Che79 - Вторник, 20.02.2018, 16:27
Ответить
Сообщение Классические варианты через ВПР() и ИНДЕКС() Код
=ЕСЛИОШИБКА(ВПР(C2;{0;"F":0,01;"E":10;"D":30;"C":60;"B":75;"A"};2);"")
Код
=ЕСЛИОШИБКА(ИНДЕКС({"F":"E":"D":"C":"B":"A"};ПОИСКПОЗ(C2;{0:0,01:10:30:60:75};1));"")
, где С2=(B2/A2)*100 Автор - Che79 Дата добавления - 20.02.2018 в 16:11
abtextime
Дата: Вторник, 20.02.2018, 16:21 |
Сообщение № 8
Группа: Проверенные
Ранг: Ветеран
Сообщений: 828
Репутация:
117
±
Замечаний:
0% ±
Excel 2010
Che79, а можно формулу на морду поста выносить? ) а то лениво файл открывать )
Che79, а можно формулу на морду поста выносить? ) а то лениво файл открывать ) abtextime
Ответить
Сообщение Che79, а можно формулу на морду поста выносить? ) а то лениво файл открывать ) Автор - abtextime Дата добавления - 20.02.2018 в 16:21
Che79
Дата: Вторник, 20.02.2018, 16:28 |
Сообщение № 9
Группа: Друзья
Ранг: Старожил
Сообщений: 1649
Репутация:
306
±
Замечаний:
0% ±
2013 Win, 365 Mac
abtextime , понимаю)) добавил формулы в пост выше
abtextime , понимаю)) добавил формулы в пост вышеChe79
Делай нормально и будет нормально!
Ответить
Сообщение abtextime , понимаю)) добавил формулы в пост вышеАвтор - Che79 Дата добавления - 20.02.2018 в 16:28
sboy
Дата: Вторник, 20.02.2018, 16:42 |
Сообщение № 10
Группа: Друзья
Ранг: Участник клуба
Сообщений: 2566
Репутация:
724
±
Замечаний:
0% ±
Excel 2010
Возвращаясь к попыткам ТС решить через ЕСЛИ()Я пытался все это функцией ЕСЛИ с несколькими условиями задать, увы, не сработало
чтобы сработало, условия надо задавать в обратном порядкеКод
=ЕСЛИ(B1/A1*100>=75;"A";ЕСЛИ(B1/A1*100>=60;"B";ЕСЛИ(B1/A1*100>=30;"C";ЕСЛИ(B1/A1*100>=10;"D";ЕСЛИ(B1/A1*100>0;"E";"F")))))
Возвращаясь к попыткам ТС решить через ЕСЛИ()Я пытался все это функцией ЕСЛИ с несколькими условиями задать, увы, не сработало
чтобы сработало, условия надо задавать в обратном порядкеКод
=ЕСЛИ(B1/A1*100>=75;"A";ЕСЛИ(B1/A1*100>=60;"B";ЕСЛИ(B1/A1*100>=30;"C";ЕСЛИ(B1/A1*100>=10;"D";ЕСЛИ(B1/A1*100>0;"E";"F")))))
sboy
Яндекс: 410016850021169
Ответить
Сообщение Возвращаясь к попыткам ТС решить через ЕСЛИ()Я пытался все это функцией ЕСЛИ с несколькими условиями задать, увы, не сработало
чтобы сработало, условия надо задавать в обратном порядкеКод
=ЕСЛИ(B1/A1*100>=75;"A";ЕСЛИ(B1/A1*100>=60;"B";ЕСЛИ(B1/A1*100>=30;"C";ЕСЛИ(B1/A1*100>=10;"D";ЕСЛИ(B1/A1*100>0;"E";"F")))))
Автор - sboy Дата добавления - 20.02.2018 в 16:42
IDK
Дата: Вторник, 20.02.2018, 17:25 |
Сообщение № 11
Группа: Пользователи
Ранг: Прохожий
Сообщений: 9
Репутация:
0
±
Замечаний:
0% ±
Excel 2016
чтобы сработало, условия надо задавать в обратном порядке
Я изначально так сделал, но не сработало. Потом погуглил, нашел пример с повышением, применил, но результат остался то же. Я вижу изменением в вашей формуле, а именно нет лишних (как оказывается) скобок при задаче формулы на подсчет + F вынесено, как вариант, когда ни одно из условий не выполняется. Оказывается я бродил где-то рядом. =)
чтобы сработало, условия надо задавать в обратном порядке
Я изначально так сделал, но не сработало. Потом погуглил, нашел пример с повышением, применил, но результат остался то же. Я вижу изменением в вашей формуле, а именно нет лишних (как оказывается) скобок при задаче формулы на подсчет + F вынесено, как вариант, когда ни одно из условий не выполняется. Оказывается я бродил где-то рядом. =)IDK
Ответить
Сообщение чтобы сработало, условия надо задавать в обратном порядке
Я изначально так сделал, но не сработало. Потом погуглил, нашел пример с повышением, применил, но результат остался то же. Я вижу изменением в вашей формуле, а именно нет лишних (как оказывается) скобок при задаче формулы на подсчет + F вынесено, как вариант, когда ни одно из условий не выполняется. Оказывается я бродил где-то рядом. =)Автор - IDK Дата добавления - 20.02.2018 в 17:25
IDK
Дата: Вторник, 20.02.2018, 17:30 |
Сообщение № 12
Группа: Пользователи
Ранг: Прохожий
Сообщений: 9
Репутация:
0
±
Замечаний:
0% ±
Excel 2016
Еще один момент - нужно как-то в формуле учесть, чтобы при условии, когда значение B1 > 0, а значение A1 = 0 в ячейку проставлялся критерий/рейтинг "А". По правилам математики происходит деление на нуль, что приводит к обнулению всего значения, а нужно обойти это правило, и принудительно присвоить критерий/рейтинг "А". Пример: B1 = 3, A1 = 0. Результат операции должен быть не #ДЕЛО или #ЗНАЧ, а конкретно - А.
Еще один момент - нужно как-то в формуле учесть, чтобы при условии, когда значение B1 > 0, а значение A1 = 0 в ячейку проставлялся критерий/рейтинг "А". По правилам математики происходит деление на нуль, что приводит к обнулению всего значения, а нужно обойти это правило, и принудительно присвоить критерий/рейтинг "А". Пример: B1 = 3, A1 = 0. Результат операции должен быть не #ДЕЛО или #ЗНАЧ, а конкретно - А. IDK
Сообщение отредактировал IDK - Вторник, 20.02.2018, 17:32
Ответить
Сообщение Еще один момент - нужно как-то в формуле учесть, чтобы при условии, когда значение B1 > 0, а значение A1 = 0 в ячейку проставлялся критерий/рейтинг "А". По правилам математики происходит деление на нуль, что приводит к обнулению всего значения, а нужно обойти это правило, и принудительно присвоить критерий/рейтинг "А". Пример: B1 = 3, A1 = 0. Результат операции должен быть не #ДЕЛО или #ЗНАЧ, а конкретно - А. Автор - IDK Дата добавления - 20.02.2018 в 17:30
Che79
Дата: Вторник, 20.02.2018, 17:42 |
Сообщение № 13
Группа: Друзья
Ранг: Старожил
Сообщений: 1649
Репутация:
306
±
Замечаний:
0% ±
2013 Win, 365 Mac
Код
=ЕСЛИОШИБКА(ВПР(C2;{0;"F":0,01;"E":10;"D":30;"C":60;"B":75;"A"};2);"A")
Код
=ЕСЛИОШИБКА(ИНДЕКС({"F":"E":"D":"C":"B":"A"};ПОИСКПОЗ(C2;{0:0,01:10:30:60:75};1));"A")
Код
=ЕСЛИОШИБКА(ВПР(C2;{0;"F":0,01;"E":10;"D":30;"C":60;"B":75;"A"};2);"A")
Код
=ЕСЛИОШИБКА(ИНДЕКС({"F":"E":"D":"C":"B":"A"};ПОИСКПОЗ(C2;{0:0,01:10:30:60:75};1));"A")
Che79
Делай нормально и будет нормально!
Ответить
Сообщение Код
=ЕСЛИОШИБКА(ВПР(C2;{0;"F":0,01;"E":10;"D":30;"C":60;"B":75;"A"};2);"A")
Код
=ЕСЛИОШИБКА(ИНДЕКС({"F":"E":"D":"C":"B":"A"};ПОИСКПОЗ(C2;{0:0,01:10:30:60:75};1));"A")
Автор - Che79 Дата добавления - 20.02.2018 в 17:42
IDK
Дата: Вторник, 20.02.2018, 17:56 |
Сообщение № 14
Группа: Пользователи
Ранг: Прохожий
Сообщений: 9
Репутация:
0
±
Замечаний:
0% ±
Excel 2016
Спасибо. Теперь только нужно разобраться, как каждая отдельная функция работает, чтобы понимать алгоритм вычислений. =)
Спасибо. Теперь только нужно разобраться, как каждая отдельная функция работает, чтобы понимать алгоритм вычислений. =) IDK
Ответить
Сообщение Спасибо. Теперь только нужно разобраться, как каждая отдельная функция работает, чтобы понимать алгоритм вычислений. =) Автор - IDK Дата добавления - 20.02.2018 в 17:56