time関数のハマること(時間(シリアル値の足し算))

time関数のハマること

こちらは素人です。

いつも見せていただくブログで、time関数の記載がありました。

自分も数年前に「time関数って便利」と思ったのですが、当時ハマりました。


実際やってみるとエラーになる値がある。
例:
=time(,,33000)

33000秒あたりでおかしくなる。

当時、素人(今も)なので、問い合わせしました。


(その際にお世話になったHP エクセルの神髄 鵜原パソコン研究所)
「時間計算で困ったときの確実な対処方法」

今は、そのHPに書かれていますが、
*****************************************
TIME関数の制限について

TIME関数の引数は、
ヘルプにも書かれていますが、「0~32767の範囲で指定します。」
つまり、秒数なら概ね9時間以上となる場合は制限値を超えてしまいます。
*****************************************

その時の記録があまり残っていないのですが、24時間など大きい数字を「直接」time関数の秒部分に入れて変換しようと考えている場合は使えません。
32767は16進数の関係らしい。変数の「int型」(良く知らんけど)
(解決法は、そこHPに載ってますが、工夫すれば問題なし。)

 

以前は、時分秒がシリアル値の少数で計算されるので、時間として足し算を重ねると、どうしても誤差が出る(合致しない)。そのため、シリアル値でなく、整数化して計算しようとしていました。

 

ご存じかと思いますが、自分の備忘録のため。念のため。

新年なので、出勤簿の時間計算などする機会には注意。少数と割り算は、エクセルは怖いです。