プロが教える店舗&オフィスのセキュリティ対策術

よろしく御願い致します。
経過時間を分単位に換算し60分超のものをNGとして管理したいのです。
以下の通り設定しましたがC1の経過時間の計算はできましたが
D1の判定結果が全てOKになってしまいます。
-----------------------------------------------
A1:開始日時分:書式設定でm/d h:mm
B1:終了日時分:書式設定でm/d h:mm
C1:経過時間(分):B1-A1にして書式設定で[mm]
D1:判定:IF(C1>60,"NG","OK")
-----------------------------------------------
ちゃんと判定ができる方法を御教授下さい。

A 回答 (3件)

C1セルの内容は 60という表記でも数値として 60が入っているのではありません。


書式で 0.041666667という数値が 60 と表示されているに過ぎません。

そんなわけで他の方が回答しているように シリアル値で比較する方法を採る必要があります。

 1/24 : 1日 = 1 なので、1時間 = 1/24
 時間を示すシリアル値を 1440倍して分の単位を整数にする
 TIME関数: TIME(時間,分,秒)
 TIMEVALUE関数: TIMEVALUE("1:00")
 どこかのセルに 1:00 と入力して、そのセルの値と比較
など

また、日にちをまたぐ時間の計算には注意してください。
時間だけ入力すると日にちを考慮せずに計算してしまうことがあります。
例:
 (0:35)-(23:30)= 65分
   ↓
×(5月2日 0:35)-(5月2日 23:30)=マイナス22時間55分
○(5月3日 0:35)-(5月2日 23:30)=65分
    • good
    • 0
この回答へのお礼

回答ありがとうございました。
シリアル値について解説していただき理解ができました。
日にちをまたぐ場合についても解説いただき助かりました。
結局のところ既存の式に*1440を入れることで解決しました。

お礼日時:2007/05/02 09:11

セル「C1」を参照せず、以下のようにしてみて下さい。



セルD1に
=IF(B1-A1>TIME(0,60,0),"NG","OK")
    • good
    • 0
この回答へのお礼

回答ありがとうございました。TIME関数について調べて納得しました。
C1を参照しないと言うのは考えてなかったのでブレイクスルーできました。

お礼日時:2007/05/02 09:07

D1は


=IF(C1>1/24,"NG","OK")
にしてみてください。エクセル内部では1日が「1」、1時間は「1/24」です
    • good
    • 0
この回答へのお礼

ありがとうございました、
シリアル値の意味がよくわかっていなかったので
簡単に解説していただきよくわかりました。

お礼日時:2007/05/02 08:56

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!