
Общая формула
=LEFT(date,10)+MID(date,12,8)
Резюме
Когда информация о дате из других систем вставляется или импортируется в Excel, она может не распознаваться как правильная дата или время. Вместо этого Excel может интерпретировать эту информацию только как текстовое или строковое значение.
Чтобы преобразовать строку даты в datetime (дату со временем), вы можете проанализировать текст на отдельные компоненты, а затем построить правильное datetime.
В показанном примере мы используем следующие формулы.
Чтобы извлечь дату, формула в C5:
=DATEVALUE(LEFT(B5,10))
Чтобы извлечь дату, формула в d5 выглядит так:
=TIMEVALUE(MID(B5,12,8))
Чтобы собрать дату и время, формула в E5:
=C5+D5
Объяснение
Чтобы получить дату, мы извлекаем первые 10 символов значения с помощью LEFT:
LEFT(B5,10) // returns "2015-03-01"
Результатом является текст, поэтому, чтобы Excel интерпретировал как дату, мы заключаем LEFT в DATEVALUE, что преобразует текст в правильное значение даты Excel.
Чтобы получить время, мы извлекаем 8 символов из середины значения с помощью MID:
MID(B5,12,8) // returns "12:28:45"
Опять же, результат - текст. Чтобы Excel интерпретировал как время, мы заключаем MID в TIMEVALUE, что преобразует текст в правильное значение времени Excel.
Чтобы построить окончательную дату и время, мы просто добавляем значение даты к значению времени.
Все в одной формуле
Хотя в этом примере дата и время извлекаются отдельно для ясности, вы можете комбинировать формулы, если хотите. Следующая формула извлекает дату и время и складывает их за один шаг:
=LEFT(date,10) + MID(date,12,8)
Обратите внимание, что DATEVALUE и TIMEVALUE в этом случае не нужны, потому что математическая операция (+) заставляет Excel автоматически преобразовывать текстовые значения в числа.