perlのtime関数で取得したシリアル時間をエクセルで読む方法
perlのtime関数では1970年1月1日0時0分0秒からの経過時間(秒)を表示します。
このように表示されます。→ 1063060415
これでは、この数字が何時何分を表すかわかりません。
そのために、実際にはlocaltime関数などを使っている例が多いです。
ただ、いったんアクセス解析cgiのtime関数で取得してしまったシリアル時刻は、変換のしようがありません。
一方、エクセルも同様の考え方で、シリアル時刻を持っていますが、perlのtime関数とは基準が違います。
基準 | 単位 | |
perl | 1970年1月1日 | 秒数 |
excel | 1900年1月1日 | 日数 |
perlのtime関数で取得したシリアル時刻を、エクセルで時刻化するには、以下の式を入力します。
=(A1/86400)+25569+0.375
赤字はサーバ時差。サーバがグリニッジ標準時を採用しているとき、日本時間にしたい場合はこの時差分を加えます。
そしてセルの書式設定を「ユーザー定義」「yyyy/m/d h:mm:ss」とします。
よって 1063060415 は、2003/9/9 7:33:35 であるとわかります。