Unix時間(Unix Time)を、協定世界時(UTC)や日本標準時(JST)に変換するExcelの計算式を解説します。
Unix時間(Unix Time)とは?
Unix時間(Unix time)は、コンピューターシステム上の時刻表現の一種です。
協定世界時(UTC)の「1970年1月1日午前0時0分0秒」から経過した秒数で表されます。
たとえば「1970年1月1日午前0時1分12秒」をUNIX時刻で表すと「72」になります。
計算式: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時間を日付に変換してくれるサイトを載せておきます。
今回の計算式のテストにも使用しました。
最後までご覧いただきありがとうございます。
では、また次の記事でお会いしましょう。
コメント