2012-02-21 87 views
1

中Excel单元格中的数据是这样的:为什么我的日期和时间是这样的? “9132128677”

5/17/05 19:23:14 

然后我用这个代码:

Dim strString As String 
Dim strDate As String 
Dim strTime As String 

strString = Sheet5.Range("A" & x) 'Where Range(A,x) contain the time stamp mentioned above 

在本地窗口结果是这样的:

strString = "9132128677" 

这是为什么发生?

如何获得strDate等于5/17/05和strTime等于19:23:14?

我的想法是这样:

Sub SplitValue(strString As String, strDate As String, strTime As String) 

    Dim varSplit As Variant 

    varSplit = Split(strString, " ") 

    strDate = varSplit(0) 
    strTime = varSplit(1) 

End Sub 

但首先我需要理解为什么日&时间显示为“9132128677”。谁能解释一下?

+0

我完全无法再现这一点,Excel中的数字形式的日期是浮点数,单元格是什么特定格式,它是公式结果吗? - .Text会给你显示的内容,但可以打破不同的日期格式 – 2012-02-21 16:30:30

+0

Alex K.我认为你正在做的事情。我无法将该strString分配给使用CDate的日期。我如何找出它的格式?它不是公式的结果,而是它是使用AbleToExtract(一种将PDF数据转换为Excel格式的程序)从Adobe文件生成的。 – phan 2012-02-21 16:33:33

+0

右键单击 - >格式化单元格 – 2012-02-21 16:34:37

回答

1

您可以右键单击 - >格式化单元格以设置明确的格式,或使用.Text获取显示的值。

0

看起来像一个时间戳,它是因为通常的预定日期开始已经经过1月1日的秒数,1970

+0

如果'9132128677'是自1970年以来的秒数,它将代表2259年的时间。如果它代表当前时间,则它指的是1722年的某个时间点。 – 2012-02-23 04:00:01

-1

http://www.vb6.us/tutorials/formating-dates-and-times-vb6

格式$(现在,“MM/DD/YYYY H: mm:ss“)

+1

我不知道为什么有人对此评论发表了评论。我实际上发现这个教程有点帮助。 – phan 2012-02-21 16:29:56

+0

他们不喜欢我的回答。亚历克斯K的回答以及我的两个工作:) – tcables 2012-02-21 16:49:26

+0

我没有downvote,但回答简单地链接到其他网站通常不喜欢。如果该网站停用或无法访问,会发生什么情况?如果您引用了您认为有用的文章部分,则可以获得更多赞扬。 – Brandon 2012-02-21 18:05:26

相关问题