Результат по наличию букв в строке
DrMini
Дата: Среда, 14.01.2026, 07:27 |
Сообщение № 1
Группа: Модераторы
Ранг: Старожил
Сообщений: 2165
Репутация:
384
±
Замечаний:
0% ±
Excel LTSC 2024 RUS
Здравствуйте форумчане и гости форума. Мне нужно рассчитать продолжительность обеда в зависимости от продолжительности работы. Если в строке присутствует буква Я то обед 2 часа. Если в строке присутствует буква Н то обед 1 час. Если в строке присутствует и буква Я и Н , то обед 1 и 2 часа. Сделал так:Код
=ЕСЛИМН((СЧЁТЕСЛИ($A1:$D1;"Я")>0)*(СЧЁТЕСЛИ($A1:$D1;"Н")>0)=1;"1 и 2 часа";СЧЁТЕСЛИ($A1:$D1;"Я")>0;"2 часа";СЧЁТЕСЛИ($A1:$D1;"Н")>0;"1 час";1;"")
Может есть мысли, как укоротить формулу?
Здравствуйте форумчане и гости форума. Мне нужно рассчитать продолжительность обеда в зависимости от продолжительности работы. Если в строке присутствует буква Я то обед 2 часа. Если в строке присутствует буква Н то обед 1 час. Если в строке присутствует и буква Я и Н , то обед 1 и 2 часа. Сделал так:Код
=ЕСЛИМН((СЧЁТЕСЛИ($A1:$D1;"Я")>0)*(СЧЁТЕСЛИ($A1:$D1;"Н")>0)=1;"1 и 2 часа";СЧЁТЕСЛИ($A1:$D1;"Я")>0;"2 часа";СЧЁТЕСЛИ($A1:$D1;"Н")>0;"1 час";1;"")
Может есть мысли, как укоротить формулу? DrMini
Ответить
Сообщение Здравствуйте форумчане и гости форума. Мне нужно рассчитать продолжительность обеда в зависимости от продолжительности работы. Если в строке присутствует буква Я то обед 2 часа. Если в строке присутствует буква Н то обед 1 час. Если в строке присутствует и буква Я и Н , то обед 1 и 2 часа. Сделал так:Код
=ЕСЛИМН((СЧЁТЕСЛИ($A1:$D1;"Я")>0)*(СЧЁТЕСЛИ($A1:$D1;"Н")>0)=1;"1 и 2 часа";СЧЁТЕСЛИ($A1:$D1;"Я")>0;"2 часа";СЧЁТЕСЛИ($A1:$D1;"Н")>0;"1 час";1;"")
Может есть мысли, как укоротить формулу? Автор - DrMini Дата добавления - 14.01.2026 в 07:27
Nic70y
Дата: Среда, 14.01.2026, 07:52 |
Сообщение № 2
Группа: Друзья
Ранг: Экселист
Сообщений: 9205
Репутация:
2463
±
Замечаний:
0% ±
Excel 2010
доброе вариантКод
=ВЫБОР((СЧЁТЕСЛИ($A1:$D1;"Я")>0)*2+(СЧЁТЕСЛИ($A1:$D1;"Н")>0)+1;"";"1 час";"2 часа";"1 и 2 часа")
доброе вариантКод
=ВЫБОР((СЧЁТЕСЛИ($A1:$D1;"Я")>0)*2+(СЧЁТЕСЛИ($A1:$D1;"Н")>0)+1;"";"1 час";"2 часа";"1 и 2 часа")
Nic70y
ЮMoney 41001841029809
Ответить
Сообщение доброе вариантКод
=ВЫБОР((СЧЁТЕСЛИ($A1:$D1;"Я")>0)*2+(СЧЁТЕСЛИ($A1:$D1;"Н")>0)+1;"";"1 час";"2 часа";"1 и 2 часа")
Автор - Nic70y Дата добавления - 14.01.2026 в 07:52
DrMini
Дата: Среда, 14.01.2026, 10:02 |
Сообщение № 3
Группа: Модераторы
Ранг: Старожил
Сообщений: 2165
Репутация:
384
±
Замечаний:
0% ±
Excel LTSC 2024 RUS
Большое спасибо Николай. Всё работает.
Большое спасибо Николай. Всё работает.DrMini
Ответить
Сообщение Большое спасибо Николай. Всё работает.Автор - DrMini Дата добавления - 14.01.2026 в 10:02
Gustav
Дата: Среда, 14.01.2026, 16:17 |
Сообщение № 4
Группа: Админы
Ранг: Участник клуба
Сообщений: 2875
Репутация:
1216
±
Замечаний:
±
начинал с Excel 4.0, видел 2.1
Чуть покороче и попроще, но формула массива (Ctrl+Shift+Enter):Код
=ВЫБОР(ИЛИ(A1:D1="Я")*2+ИЛИ(A1:D1="Н")+1;"";"1 час";"2 часа";"1 и 2 часа")
Чуть покороче и попроще, но формула массива (Ctrl+Shift+Enter):Код
=ВЫБОР(ИЛИ(A1:D1="Я")*2+ИЛИ(A1:D1="Н")+1;"";"1 час";"2 часа";"1 и 2 часа")
Gustav
МОИ: Ник , Tip box: 41001663842605
Ответить
Сообщение Чуть покороче и попроще, но формула массива (Ctrl+Shift+Enter):Код
=ВЫБОР(ИЛИ(A1:D1="Я")*2+ИЛИ(A1:D1="Н")+1;"";"1 час";"2 часа";"1 и 2 часа")
Автор - Gustav Дата добавления - 14.01.2026 в 16:17
Egyptian
Дата: Среда, 14.01.2026, 18:29 |
Сообщение № 5
Группа: Проверенные
Ранг: Ветеран
Сообщений: 535
Репутация:
202
±
Замечаний:
0% ±
Excel 2013/2016
Давненько меня тут не было. Еще вариант.Код
=CHOOSE(SUM((COUNTIF($A1:$D1;{"Я";"Н"})>0)*{2;1}+{0;1});"";"1 час";"2 часа";"1 и 2 часа")
Ну и если SUM заменить на SUMPRODUCT то можно обойтись без массивного ввода.
Давненько меня тут не было. Еще вариант.Код
=CHOOSE(SUM((COUNTIF($A1:$D1;{"Я";"Н"})>0)*{2;1}+{0;1});"";"1 час";"2 часа";"1 и 2 часа")
Ну и если SUM заменить на SUMPRODUCT то можно обойтись без массивного ввода. Egyptian
Ответить
Сообщение Давненько меня тут не было. Еще вариант.Код
=CHOOSE(SUM((COUNTIF($A1:$D1;{"Я";"Н"})>0)*{2;1}+{0;1});"";"1 час";"2 часа";"1 и 2 часа")
Ну и если SUM заменить на SUMPRODUCT то можно обойтись без массивного ввода. Автор - Egyptian Дата добавления - 14.01.2026 в 18:29
DrMini
Дата: Среда, 14.01.2026, 19:12 |
Сообщение № 6
Группа: Модераторы
Ранг: Старожил
Сообщений: 2165
Репутация:
384
±
Замечаний:
0% ±
Excel LTSC 2024 RUS
Большое спасибо Константин. Всё прекрасно работает. В новых версиях Excel даже массивный ввод не нужен.
Большое спасибо Константин. Всё прекрасно работает. В новых версиях Excel даже массивный ввод не нужен.DrMini
Ответить
Сообщение Большое спасибо Константин. Всё прекрасно работает. В новых версиях Excel даже массивный ввод не нужен.Автор - DrMini Дата добавления - 14.01.2026 в 19:12
DrMini
Дата: Среда, 14.01.2026, 19:14 |
Сообщение № 7
Группа: Модераторы
Ранг: Старожил
Сообщений: 2165
Репутация:
384
±
Замечаний:
0% ±
Excel LTSC 2024 RUS
Давненько меня тут не было
Спасибо Георгий за Ваши варианты. Всё прекрасно работает. В новых версиях Excel даже массивный ввод не нужен. Собрал все варианты в файл. Вдруг кому пригодится.
Давненько меня тут не было
Спасибо Георгий за Ваши варианты. Всё прекрасно работает. В новых версиях Excel даже массивный ввод не нужен. Собрал все варианты в файл. Вдруг кому пригодится.DrMini
Ответить
Сообщение Давненько меня тут не было
Спасибо Георгий за Ваши варианты. Всё прекрасно работает. В новых версиях Excel даже массивный ввод не нужен. Собрал все варианты в файл. Вдруг кому пригодится.Автор - DrMini Дата добавления - 14.01.2026 в 19:14