4

私のクライアントは、いくつかの列を含むスプレッドシートを受け取ります。そのうちの 1 つは「日付」です。日付のみがフォーマットされていることが判明しましたDate(1292291582263-0700)(JSON日付のようです)。

このスプレッドシートのコード (VBA) の他の場所で、この JSON 日付を MM/DD/YYYY 形式に変換して操作する必要があります。

このJSON日付形式を解析してMM/DD/YYYY形式に変換する方法を知っている人はいますか? Javascript、C#、または ASP.NET などの SO に関する多くのソリューションを読んだことがありますが、使用する必要があるのは、このプロジェクトの Excel 2010 と VBA コードだけです。必要に応じて読み取り可能な形式に到達する方法はありますか?

4

2 に答える 2

6

+/- オフセットのあるミリ秒のエポック時間?

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 
于 2011-04-27T15:06:50.920 に答える