2013/11/26

【Excel】 ある日時の任意秒数後の日時を計算

まとめ
・Excelで今の時刻から任意の秒数を計算するには、今の時刻+秒数/3600/24
・計算結果が入るセルは「日時」が表示できるように表示形式を変更


---ここから本文---

例えばクッキーを反物質装置で作ってる時とかに、
今のCPSは385Gだけど、次のアンチマターコンデンサを買うのにあと何秒かかるんだろう
なんて、思う時がある。

つまり、現在時刻から任意の秒数後って何月何日の何時何分何秒か知りたい
(あと地球が何回、回った時かも)

これをExcelで計算するにはどうすればいいのだろうか、というのが今回の問題。

そもそもExcelでは、
日付を1960/1/1からの日数
時間を0から1の少数で表している。
何月何日何時何分は (日付).(少数)の形で内部的には管理されている。

例えば0.5と入力してあるセルの表示形式を時刻にすると、12:00となる。

ということで、
今の「日時と時刻 + 秒数」 という計算をしてやれば任意の秒数後の日時が計算できる。

ただし、秒数を日数.秒数という形に変換しなければいけない。
この計算は秒数/3600(一時間の秒数)/24(一日の時間数)でできる。

例えば、
A1 に今の日付
A2 に今の時刻
A3 に秒数
となっているなら、
A4=(A1+A2+A3/3600/24)とすればよい。
最後にA4の表示形式を日時にすれば指定秒数後の日時が計算できる。