перевод текста в дату. MS excel

Подскажите, пожалуйста, как перевести текст формата:

Февраль 2024 г. Январь 2024 г. Январь 2024 г. Март 2024 г.

в формат даты? день можно указать любой, например 1 число месяца.

введите сюда описание изображения

Написал такой вот ужас :)) как упростить, есть идеи?

=DATE(RIGHT(SUBSTITUTE(H11," г.",""),4),IF(LEFT(SUBSTITUTE(H11," г.",""), FIND(" ", SUBSTITUTE(H11," г.",""))-1)="Январь",1,IF(LEFT(SUBSTITUTE(H11," г.",""), FIND(" ", SUBSTITUTE(H11," г.",""))-1)="Февраль",2,IF(LEFT(SUBSTITUTE(H11," г.",""), FIND(" ", SUBSTITUTE(H11," г.",""))-1)="Март",3,IF(LEFT(SUBSTITUTE(H11," г.",""), FIND(" ", SUBSTITUTE(H11," г.",""))-1)="Апрель",4,IF(LEFT(SUBSTITUTE(H11," г.",""), FIND(" ", SUBSTITUTE(H11," г.",""))-1)="Май",5,IF(LEFT(SUBSTITUTE(H11," г.",""), FIND(" ", SUBSTITUTE(H11," г.",""))-1)="Июнь",6,IF(LEFT(SUBSTITUTE(H11," г.",""), FIND(" ", SUBSTITUTE(H11," г.",""))-1)="Июль",7,IF(LEFT(SUBSTITUTE(H11," г.",""), FIND(" ", SUBSTITUTE(H11," г.",""))-1)="Август",8,IF(LEFT(SUBSTITUTE(H11," г.",""), FIND(" ", SUBSTITUTE(H11," г.",""))-1)="Сентябрь",9,IF(LEFT(SUBSTITUTE(H11," г.",""), FIND(" ", SUBSTITUTE(H11," г.",""))-1)="Октябрь",10,IF(LEFT(SUBSTITUTE(H11," г.",""), FIND(" ", SUBSTITUTE(H11," г.",""))-1)="Ноябрь",11,IF(LEFT(SUBSTITUTE(H11," г.",""), FIND(" ", SUBSTITUTE(H11," г.",""))-1)="Декабрь",12,"ошибка")))))))))))),15)


Ответы (1 шт):

Автор решения: vikttur_Stop_RU_war_in_UA

Год можно извлечь из правой части:

=ЛЕВБ(ПРАВБ(B2;7);4)

Но если справа в тексте будет не "г.", а "г" или "г. "? Надежнее:

=ПСТР(B2;ПОИСК(" ";B2)+1;4)

Преобразовать название месяца в число:

=ВПР(ЛЕВБ(B2;3);{"янв";1:"фев";2:"мар";3:"апр";4:"май";5:"июн";6:"июл";7:"авг";8:"сен";9:"окт";10:"ноя";11:"дек";12};2;)

Но интереснее:

=ПОИСК(ПСТР(B2;2;2);"/нвеварпрайюнюлвгенктояек")/2

В итоге:

=ДАТА(ПСТР(B2;ПОИСК(" ";B2)+1;4);ПОИСК(ПСТР(B2;2;2);"/нвеварпрайюнюлвгенктояек")/2;1)

ПСТР - текстовая фукция, возвращает год в текстовом формате. Но это не проблема - функция ДАТА все понимает )

Если в Google-таблицах - там ЛЕВБ, ПРАВБ не работают, заменить обычными.

→ Ссылка