Значение даты Excel

#c# #excel #date

#c# #excel #Дата

Вопрос:

Как мне преобразовать строку даты 2019-06-20T00:00:00 01:00 в дату Excel? Значение даты возвращает значение #, когда я пытаюсь сделать это в Excel.

Строка даты берется из C # DateTime в shortdatestring()

Ответ №1:

Вместо ToShortDateString() использования ToOADate() .

Отформатируйте ячейку как дату, и все должно быть готово.

Комментарии:

1. Это не очень хорошо, поскольку ToOADate возвращает double, я думаю, я могу просто изменить способ отображения этого в Excel, и я закончил!

Ответ №2:

В Excel вы могли бы просто взять все слева от T символа. Если эта строка даты была в ячейке A1, то:

 =DATEVALUE(LEFT(A1,FIND("T",A1)-1))
  

В качестве альтернативы в VBA, если строка даты была сохранена в переменной с именем sFoo :

 CDate(Left$(sFoo,Instr(sFoo,"T")-1))