Конвертировать дату JSON в формат MM/DD/YYYY?


Мой клиент получает электронную таблицу с несколькими столбцами, один из которых- "дата". Только дата оказывается отформатирована как Date(1292291582263-0700) (похоже, это дата JSON).

Мне нужно конвертировать и работать с этой датой JSON в формате MM/DD/YYYY, в другом месте кода этой таблицы (VBA).

Кто-нибудь знает, как разобрать и преобразовать этот формат даты JSON в формат MM/DD/YYYY? Я прочитал много решений на SO, которые находятся в Javascript, C# или ASP.NET, и т. д. Но все, что я должен работать с помощью Excel 2010 и кода VBA для этого проекта . Есть ли способ получить читаемый формат, как мне нужно?

1 4

1 ответ:

Время миллисекундной эпохи со смещением+/ -?

Const test = "1292291582263-0700"

Dim dt As String: dt = Left$(test, 13)
Dim off As String: off = Mid$(test, 14)

Dim d As Date: d = DateAdd("s", CCur(dt) / 1000, "01/01/1970")
Debug.Print d
<<< 14/12/2010 01:53:02 

d = DateAdd("h", Left$(off, 3), d)
d = DateAdd("n", Right$(off, 2), d)
Debug.Print d
<<< 13/12/2010 18:53:02