10/23/2023

Excel。何時間後の時刻を、単純な和算で算出できないのでどうしたらいいの。【hours later】

Excel。何時間後の時刻を、単純な和算で算出できないのでどうしたらいいの。

<TIME+INT関数>

Excelは時間計算が苦手というか、少々考えないと算出できないものがあります。


例えば、何時間後の時刻を算出したい場合も、そのうちの一つです。

何時間後

A列には、時刻が入力してあります。


B列には、処理時間が入力されていて、時刻にこの処理時間が経過した時間を終了予定時刻として、算出してあるのがC列です。


C2には、A2+B2としたいところですが、希望するように算出してくれません。


Excelは、日時について、「シリアル値」というのをつかっています。


1日を1としているのがシリアル値です。

なので、単純に処理時間を足してもダメというわけです。


なぜならば、1時間は1/24だからですね。


そこで、C2には、次の数式を設定すると、算出することができます。


=A2+TIME(INT(B2),(B2-INT(B2))*60,0)

B列の処理時間は、シリアル値を考慮して数式を作る必要があります。


TIME(INT(B2),(B2-INT(B2))*60,0) 

を確認しておきましょう。


シリアル値で考える必要があります。

A列が時間なので、B列も時間にしなければいけません。


時間を作ることができる関数が、TIME関数です。


TIME関数の最初の引数は「時」です。

1時間半を1.5というように入力することを考慮して、整数化するために、INT関数をつかっています。


INT(B2)とすることで、「時」を抽出することができます。


2つ目の引数が「分」です。

小数点を抽出したいので、B2の値から、INT(B2)として整数を減算すれば、小数点以下を算出することができます。


3.5-3=0.5


「0.5」が算出されるのですが、これをそのまま「分」としてつかえません。

1時間は60分なので、60を掛けてあげる必要があります。


そのため、「分」の引数を、

(B2-INT(B2))*60

としているわけです。


最後の引数は「秒」ですが、今回は、不要なので「0」と設定します。


これで、何時間後の時刻を算出することができます。