セルH2
にエポックタイムがあり、値は1517335200000
です。私はそれをGMTで30/01/2018 6:00:00 PM
を返す人間が読める形式に変換しようとしています。
OpenOfficeフォーラムから入手した式H2/86400+25569
で変換しようとしました。式は値17587319
を返します。 LibreOffice Calcの数値形式をDate
に変更すると、06/09/-15484
の値が返されます。それは私が望む価値ではありません。では、dd/mm/yyyy hh:mm:ss形式の形式で値を取得するにはどうすればよいですか?
H2
に変換する数値が含まれている場合(1517335200000
)。
H3
に式を含める:
= H2/1000 /(60 * 60 * 24)+ 25569
これは43130.75の数を返します。
セルH3
の形式を日付に変更します。どちらか:
H3
セルの形式を必要な日付形式に変更します。
希望のフォーマットを表示するのに十分な幅がない場合は、セルの幅を広げます(ヒント:3つの#が表示されます)。
エポック時間は1970年1月1日からの秒数です。
Calcの内部時間は1899年12月30日からの日数です。
したがって、H3で正しい結果を得るには:
正しい数値(最後の式)を取得します。
H3 = H2/(60*60*24) + ( Difference to 1/1/1970 since 12/30/1899 in days )
H3 = H2/86400 + ( DATE (1970,1,1) - DATE(1899,12,30) )
H3 = H2/86400 + 25569
しかし、あなたが与えているエポック値は大きすぎます。それは必要以上に3つのゼロです。 1517335200000ではなく1517335200である必要があります。ミリ秒単位で指定されているようです。したがって、1000で除算します。この変更により、式は次のようになります。
H3 = H2/1000/86400+25569 = 43130.75
H3
の形式を日付と時刻に変更すると(形式->セル->数値->日付->日付と時刻)、次のようになります。
01/30/2018 18:00:00
h3で。
もちろん、Unixエポック時間は常にUTC(+0子午線)に基づいているため、上記の結果は、ローカルタイムゾーンがUTCから離れている時間だけシフトする必要があります。したがって、現地時間を取得するには、タイムゾーンが太平洋標準時GMT-8の場合、(-8)時間を追加する必要があります。 H4のローカルタイムゾーン(-8)を使用したH3の式は次のようになります。
H3 = H2/1000/86400 + 25569 + H4/24 = 43130.416666
そして、次のように提示されます。
01/30/2018 10:00:00
h3の形式がそのような時刻形式に設定されている場合。
LibreOfficeの場合:
LibreaOffise 1899-12-01およびUTC 1970-01-01の開始日とは異なるためです。私はここに式を見つけました: https://forum.openoffice.org/en/forum/viewtopic.php?f=13&t=606#p290884