UNIX時刻(UNIX時間)を、協定世界時(UTC)や日本標準時(JST)に変換するExcelの計算式を解説します。
UNIX時刻(UNIX時間)とは?
UNIX時刻またはUNIX時間は、コンピューターシステム上の時刻表現の一種です。
協定世界時(UTC)の「1970年1月1日午前0時0分0秒」から経過した秒数で表されます。
たとえば「1970年1月1日午前0時0分1秒」をUNIX時刻で表すと「1」になります。
計算式:UNIX時刻 → 協定世界時(UTC)
セル”A1”にUNIX時刻がある場合、協定世界時(UTC)に変換するExcelの計算式は次のようになります。
=(A1/86400)+DATEVALUE(“1970/01/01”)
シリアル値に変換したUNIX時刻に、シリアル値に変換した起算日を加算しています。
UNIX時刻は、86400秒(1日を秒で表した値)で割るとシリアル値になります。
起算日は、DATEVALUE関数でシリアル値に変換します。
計算式:UNIX時刻 → 日本標準時(JST)
さきほどの協定世界時(UTC)に時差の9時間を加算すると日本標準時(JST)になります。
Excelの計算式は次のようになります。
=(A1/86400)+DATEVALUE(“1970/01/01”)+TIME(9,0,0)
補足:Excelの日付システム
Excelの日付システムには二つあります。
Microsoft365など今のExcelは、WindowsやMacに関係なく1900 date システム(1900/01/01から起算)に統一されていますが、古いMacのExcelでは、1904 date システム(1904/01/01から起算)が採用されていました。
実際は、「DATEVALUE(“1970/01/01”)」のように関数にしておくと、Excelがシステムに合ったシリアル値に上手く変換してくれるので、ユーザーが気にする必要はありません。
ですが、”1970/01/01″の1900 date システムでのシリアル値「25569」を、直接ハードコーディングしてしまうと、システムによっては異なる結果になるので注意が必要です。
おわりに
最後になりましたが、UNIX時刻を日付に変換してくれるサイトを載せておきます。
今回の計算式のテストにも使用しました。
最後までご覧いただきありがとうございます。
では、また次の記事でお会いしましょう。
コメント