Страницы: 1
RSS
Преобразовать "1 октября 2018г." в дату
 
Уважаемые форумчане! Подскажите, пожалуйста,как  дату в виде "1 октября  2018 г." преобразовать в дату "01.10.2018".  Простая смена формата ничего не дает.
Зато из "01.10.2018" можно получить "1 октября  2018 г.". пример в файле.
 
Дата
Изменено: Alexanderr - 11.01.2019 13:11:19
 
=--TRIM(LEFT(A2;2) & MID(TRIM(A2);FIND(" ";TRIM(A2));4)&MID(A2;FIND("  ";A2);6))
Изменено: БМВ - 11.01.2019 13:54:57 (для мая не подошло)
По вопросам из тем форума, личку не читаю.
 
в Power Query
 
БМВ, для мая не сработает. Нужен май.
 
Михаил С., точно. забыл про этот короткий месяц труда и мира.

=--TRIM(LEFT(A2;2) & SUBSTITUTE(MID(TRIM(A2);FIND(" ";TRIM(A2));4);"ая";"ай")&MID(A2;FIND("  ";A2);6))

и варианты:
=--TRIM(LEFT(A2;2)&"/"&FIND(MID(TRIM(A2);FIND(" ";TRIM(A2))+2;2);" нвеварпраяюнюлвгенктояек")/2&"/"&MID(A2;FIND("  ";A2);6))
массивно
=INDEX(ROW($A$1:$A$366)+("1/1/"&MID(A2;FIND("  ";A2);6))-1;MATCH(TRIM(A2);TEXT(ROW($A$1:$A$366)+("1/1/"&MID(A2;FIND("  ";A2);6))-1;"[$-F800]ДДДД, ММММ ДД, ГГГГ");))

=SUM(IFERROR(--SUBSTITUTE(SUBSTITUTE(TRIM(LOWER(A2));TEXT({1;2;3;4;5;6;7;8;9;10;11;12}*28;"[$-FC19] ММММ ");"/"&{1;2;3;4;5;6;7;8;9;10;11;12}&"/");" г.";"");0))
Изменено: БМВ - 11.01.2019 15:14:11
По вопросам из тем форума, личку не читаю.
 
Спасибо за ответ!  
 
Цитата
БМВ написал:
=--TRIM(LEFT(A2;2)&"/"&FIND(MID(TRIM(A2);FIND(" ";TRIM(A2))+2;2);" нвеварпраяюнюлвгенктояек")/2&"/"&MID(A2;FIND("  ";A2);6))
а заменить "я" на "й" вот в этом куске FIND(MID(TRIM(A2);FIND(" ";TRIM(A2))+2;2);" нвеварпраяюнюлвгенктояек")/2 не проще было?
 
Михаил С., пока мысль не поймал.
По вопросам из тем форума, личку не читаю.
 
примено так
=--СЖПРОБЕЛЫ(ЛЕВСИМВ(A2;2) & ПСТР(СЖПРОБЕЛЫ(ПОДСТАВИТЬ(A2;"я";"й"));НАЙТИ(" ";СЖПРОБЕЛЫ(A2));4)&ПСТР(A2;НАЙТИ("  ";A2);6))
зы.
нет, тогда январь не работает :(
Изменено: Михаил С. - 11.01.2019 14:48:24
 
=--TRIM(LEFT(A2;2) & SUBSTITUTE(MID(TRIM(A2);FIND(" ";TRIM(A2));4);"ая";"ай")&MID(A2;FIND("  ";A2);6))
По вопросам из тем форума, личку не читаю.
 
Ну да, чет я ступил.
 
Здравствуйте, коллеги! С такими (и многими другими) датами отлично справляется функция VBA CDATE (причем для нее падеж месяца не важен), только надо предварительно убрать "г."
Владимир
 
sokol92, Владимир, вот только не надо тяжёлую артиллерию подключать :-)
По вопросам из тем форума, личку не читаю.
 
sokol92, учтем на всякий случай :)
 
???
Код
=ДАТАЗНАЧ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ЛЕВСИМВ(A2;НАЙТИ(" ";A2;2)+3)&" "&ПРАВСИМВ(A2;7);" г.";"");"я";"й"))
Всё сложное - не нужно. Всё нужное - просто /М. Т. Калашников/
 
Михаил Лебедев,
На яваре споткнется и боле универсально, на случай если г. нет , удалить его сразу
=DATEVALUE(SUBSTITUTE(LEFT(A12;FIND(" ";A12;2)+3) &" "& RIGHT(SUBSTITUTE(A12;" г.";"");4);"ая";"ай"))
Изменено: БМВ - 11.01.2019 19:01:44
По вопросам из тем форума, личку не читаю.
 
вариант функции в столбце E
Код
Function aa(t) As Date
t = Replace(t, "г.", "")
 aa = DateValue(t)
End Function
Изменено: кузя1972 - 13.01.2019 22:48:04
Страницы: 1
Наверх