#excel #excel-formula
#excel #excel-формула
Вопрос:
1st May, 2006
3rd June,2008
22nd December, 2010
Мне нужно, чтобы это было преобразовано в формат даты и добавило 3 месяца
Комментарии:
1. Что вы пробовали сами?
2. Пожалуйста, отредактируйте заголовок, чтобы вы не кричали на нас.
Ответ №1:
можно использовать EDATE и ЗАМЕНИТЬ и ЗАМЕНИТЬ:
=EDATE(--SUBSTITUTE(REPLACE(A1,MIN(FIND({"st","nd","rd","th"},A1amp;"stndrdth")),2,""),",",""),3)
Я думаю, что у меня есть все суффиксы, но при необходимости добавьте суффикс как в поисковый массив, так и в добавленную строку.
В зависимости от версии для этого может потребоваться использование Ctrl-Shift-Enter вместо Enter при выходе из режима редактирования.
Комментарии:
1. И, как я уже сказал в своем ответе, этот действительно чище!
Ответ №2:
Я почти уверен, что есть более чистый способ сделать это:
=DATE(RIGHT(A2;4);MATCH(MID(A2;SEARCH(" ";A2) 1;(SEARCH(",";A2)-1)-(SEARCH(" ";A2) 1) 1);{"January";"February";"March";"April";"May";"June";"July";"August";"September";"October";"November";"December"};0);SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(LEFT(A2;(SEARCH(" ";A2) 1)-2);"st";"");"nd";"");"rd";"");"th";""))
Чтобы добавить 3 месяца, внутри EDATE такая же формула:
=EDATE(DATE(RIGHT(A2;4);MATCH(MID(A2;SEARCH(" ";A2) 1;(SEARCH(",";A2)-1)-(SEARCH(" ";A2) 1) 1);{"January";"February";"March";"April";"May";"June";"July";"August";"September";"October";"November";"December"};0);SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(LEFT(A2;(SEARCH(" ";A2) 1)-2);"st";"");"nd";"");"rd";"");"th";""));3)