2013-01-03 57 views
2

文本VB.NET我想在文本中的日期如Microsoft Excel日期在vb.net

例如:在msexcel的輸入日期:2013年1月1日,並設置格式的文本它使輸出41275

我該如何用vb.net做到這一點?

回答

2

你會希望DateTime.ToOADate方法。

Module Module1 

    Sub Main() 
     Dim dt As DateTime = DateTime.Parse("1/1/2013") 
     Console.WriteLine(dt.ToOADate()) 
     Console.ReadLine() 
    End Sub 

End Module 

從上面的鏈接:

一個OLE自動化日期被實現爲它的整體部件是前或午夜後的天數的浮點數,1899年12月30日,並且其小數部分表示當天的時間除以24.例如,1899年12月31日的午夜由1.0表示;早上6點,1900年1月1日2.25; 1899年12月29日午夜由-1.0表示;和上午6點,1899年12月29日由-1.25表示。

+0

感謝它的偉大工作:) –

1

做一個日期的差異

DateDiff(DateInterval.Day, Cdate("01/01/2013"),Cdate("01/01/1900"))-2 
OUTPUT: 
    -41275 


DateDiff(DateInterval.Day, Cdate("01/01/1900"),Cdate("01/01/2013"))+2 
OUTPUT: 
    41275 

參考LIVE DEMO

+0

親愛的我想輸出41275 –

+0

@MandeepSingh:更新。你有日期差異嗎 –

+0

馬克廳的代碼已經解決了這個問題 –