Если вы действительно получаете дату в текстовом формате, например 2016-04-03 00:00:00
, как в своем сообщении, то вы можете использовать следующую функцию, чтобы получить дату без отметки времени
Function cvtDt(inp As String) As Date
' inp is a string like 2016-04-03 00:00:00
On Error GoTo EH
cvtDt = CDate(Left(inp, 10))
Exit Function
EH:
cvtDt = 0
End Function
Следующий подпункт затем напишет ваш примерданные в ячейку на листе в формате, который вы упомянули в своем сообщении.
Sub OutToXL()
Dim val As Date
val = cvtDt("2016-04-03 00:00:00")
With Range("A1")
.NumberFormat = "dd-mmm-yyyy"
.Value2 = val
End With
End Sub
INT
также должны работать, если у вас нет пробелов в конце строки. В этом случае он выдаст ошибку.