1
    Dim SpssTextData As Variant
    Dim objDataDoc As ISpssDataDoc
    SpssTextData = objDataDoc.GetTextData("mydatecol", "mydatecol", 1, 1)

SpssTextData 的结果应该是 Date 类型,但是当我阅读它时,它会返回一个数字,例如:“12881203200”而不是“12/22/1990”。

显然这是一个格式问题,如http://www.ats.ucla.edu/stat/spss/library/dates.htm在“格式化日期以供显示”部分中所述

4

2 回答 2

1

SPSS 社区论坛对此进行了解释。此 api 不返回格式化日期:它返回基础数值。

于 2012-10-05T00:38:01.363 回答
0

我前段时间写了这个函数。当然可以优化。

Function spssDateToVBADate(d As Double) As Date
    Dim dias As Double, segundos As Double
    Dim f As Date
    dias = d / 86400#
    segundos = Int((dias - Int(dias)) * 86400)
    f = DateAdd("d", Int(dias), #10/14/1582#)
    spssDateToVBADate= DateAdd("s", segundos, f)
End Function
于 2013-06-19T11:29:23.760 回答