2

VB.NETで、MicrosoftExcelのようなテキストで日付を取得したい

例:MSExcelで日付を入力:2013年1月1日、フォーマットをテキストに設定すると、出力41275が得られます。

vb.netでこれを行うにはどうすればよいですか?

4

2 に答える 2

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日の午前0時前後の日数を整数で表し、その日の時間を24で割った値を小数部分で表す浮動小数点数として実装されます。たとえば、12月31日の午前0時です。 1899は1.0で表されます。1900年1月1日午前6時は2.25で表されます。1899年12月29日の深夜は-1.0で表されます。1899年12月29日の午前6時は、-1.25で表されます。

于 2013-01-03T06:31:34.157 に答える
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

ライブデモを参照

于 2013-01-03T06:10:55.310 に答える