Добрый день! У меня возникла необходимость, чтобы в зависимости от числа менялось окончание слова по правилам русского языка. Во вложении пример. Количество в ячейке E1, когда там
1, 21, 31... то должно быть "Отпуск 1 день" 2, 22, 23... то должно быть "Отпуск 2 дня" 5, 17, 28... то должно быть "Отпуск 5 дней"
Пробовал через функцию ПРАВ(E1;1) отрывать последнюю цифру, чтобы потом через ЕСЛИ составить условие, но почему-то не работает. Подскажите, пожалуйста, где мой косяк.
Добрый день! У меня возникла необходимость, чтобы в зависимости от числа менялось окончание слова по правилам русского языка. Во вложении пример. Количество в ячейке E1, когда там
1, 21, 31... то должно быть "Отпуск 1 день" 2, 22, 23... то должно быть "Отпуск 2 дня" 5, 17, 28... то должно быть "Отпуск 5 дней"
Пробовал через функцию ПРАВ(E1;1) отрывать последнюю цифру, чтобы потом через ЕСЛИ составить условие, но почему-то не работает. Подскажите, пожалуйста, где мой косяк.Dion
В русском языке в пределах сотни всё идёт по кругу - используются три формы считаемого существительного: для кол-ва 1, для кол-ва 2 и для кол-ва 5. Исключение составляет диапазон "надцать" - от 11 до 19. Для него, а также для чисел, оканчивающихся на 0, используется форма для кол-ва 5. И это всё справедливо для любых считаемых сущностей: дней, ночей, рублей, копеек, километров, литров, штук и т.п.
Для вашей ячейки F1 примерно такую формулу можно соорудить:
В русском языке в пределах сотни всё идёт по кругу - используются три формы считаемого существительного: для кол-ва 1, для кол-ва 2 и для кол-ва 5. Исключение составляет диапазон "надцать" - от 11 до 19. Для него, а также для чисел, оканчивающихся на 0, используется форма для кол-ва 5. И это всё справедливо для любых считаемых сущностей: дней, ночей, рублей, копеек, километров, литров, штук и т.п.Gustav
Добавлю на случай, если вдруг кого-нибудь также накроет. Внутренняя упёртость не давала возможности спокойно работать, пока не пойму где я накосячил. Формула заработала в таком виде:
Проблема внезапно решилась добавлением +0, то есть ЕСЛИ((ПРАВ(M12;1)+0)=1 Очередной капкан Libre, не знаю почему иначе оторванная последняя цифра не воспринимается как число. Мой вариант формулы, конечно, длиннее и не такой грамотный, но работает.
Добавлю на случай, если вдруг кого-нибудь также накроет. Внутренняя упёртость не давала возможности спокойно работать, пока не пойму где я накосячил. Формула заработала в таком виде:
Проблема внезапно решилась добавлением +0, то есть ЕСЛИ((ПРАВ(M12;1)+0)=1 Очередной капкан Libre, не знаю почему иначе оторванная последняя цифра не воспринимается как число. Мой вариант формулы, конечно, длиннее и не такой грамотный, но работает.Dion
мой вариант формулы, конечно, длиннее и не такой грамотный, но работает.
Работает, но некорректно Попробуйте, например 111 Ваша формула вернет "день", а должно быть "дней" А при 112 ваша формула вернет "дня", хотя должно быть "дней"
Выше я привел ссылку на статью с рабочей формулой, используйте её
капкан Libre, не знаю почему иначе оторванная последняя цифра не воспринимается как число
Libre здесь ни при чем, так устроены все редакторы электронных таблиц Функция
Код
=RIGHT()
- текстовая и возвращает текстовую строку Что бы преобразовать текст в число необходимо произвести с ним любое математическое действие Подробнее читайте в этой статье: Что такое -- или как превратить ИСТИНА в 1, а ЛОЖЬ в 0?
[p.s.] Dion, почему Вы разместили эту тему в разделе по Google Docs, если у Вас вопрос по Libre Office?
мой вариант формулы, конечно, длиннее и не такой грамотный, но работает.
Работает, но некорректно Попробуйте, например 111 Ваша формула вернет "день", а должно быть "дней" А при 112 ваша формула вернет "дня", хотя должно быть "дней"
Выше я привел ссылку на статью с рабочей формулой, используйте её
капкан Libre, не знаю почему иначе оторванная последняя цифра не воспринимается как число
Libre здесь ни при чем, так устроены все редакторы электронных таблиц Функция
Код
=RIGHT()
- текстовая и возвращает текстовую строку Что бы преобразовать текст в число необходимо произвести с ним любое математическое действие Подробнее читайте в этой статье: Что такое -- или как превратить ИСТИНА в 1, а ЛОЖЬ в 0?
[p.s.] Dion, почему Вы разместили эту тему в разделе по Google Docs, если у Вас вопрос по Libre Office?Serge_007
Тут ведь дело не в отпусках, а в алгоритме, который Вы запросили в названии темы: Автоматическая подстановка окончаний Именно по этому заголовку будет находится тема в поисковой выдаче Про отпуска в названии - ни слова
Libre в списке нет Но есть Open Office Libre относится к категории открытого офисного ПО, поэтому темы по данной программе надо создавать в этом разделе
Тут ведь дело не в отпусках, а в алгоритме, который Вы запросили в названии темы: Автоматическая подстановка окончаний Именно по этому заголовку будет находится тема в поисковой выдаче Про отпуска в названии - ни слова
Libre в списке нет Но есть Open Office Libre относится к категории открытого офисного ПО, поэтому темы по данной программе надо создавать в этом разделеSerge_007