アプリ版:「スタンプのみでお礼する」機能のリリースについて

エクセルで、次のようなことができるでしょうか。
A列に開始時間、B列に終了時間を入れ、開始時間と経過時間を入れることによって
自動的に5時00分から21時59分時までの時間を入れたときの経過時間をC列に、
22時00分から4時59分までの時間を入れたときの経過時間をD列に入れたいのです。
例えは、A列(開始時間)に10:00、B列(終了時間)に11:00を入れると、C列に1:00。
A列(開始時間)に1:00、B列(終了時間)2:00を入れると、D列に1:00。
使用ソフトは、エクセル:mac2001ですが、macにとらわれなくても結構ですので、よろしくお願いします。

A 回答 (2件)

もう、解決しましたか?


日も経過しているので、いまさらかもしれませんが、ちょっと面白そうなので、考えてみました。

(1)1行目[C1]セルに[5:00]、[D1]セルに[22:00]と入力(後で行を非表示にして下さい)
   この値を式に代入するとものすごく長い式になります
   どうしても入れたい場合は、下記式の
   [$C$1]→[TimeValue("5:00")]
   [$D$2]→[TimeValue("22:00")]に置き換えてください。
(2)2行目からA列に開始時間、B列に終了時間を入力
   1日は[5:00]から始まり、次の日の[5:00]までとします。
   (5:00~5:00は、24時間となり 5:01~5:01は0分となります)
(3)C2セルに
   =IF(OR(A2="",B2=""),"",IF(OR(A2>=$D$1,A2<$C$1),"",IF(OR(B2>$D$1,B2<=$C$1),$D$1,B2)-A2))
   D2セルに
   =IF(OR(A2="",B2=""),"",IF(AND(B2>$C$1,B2<=$D$1),"",IF(AND(A2>=$C$1,B2<=$C$1),1-IF(A2<$D$1,$D$1,A2)+B2,B2-IF(AND(A2>=$C$1,A2<$D$1),$D$1,A2))))
   と入力(この式をコピー貼り付け)
でどうでしょうか?

D2セルはもう少しスマートにならないか考えましたが、いい案が浮かびませんでした。
1度試してみて下さい。
式でわからない所やおかしい所があれば、補足してください。
    • good
    • 0
この回答へのお礼

ありがとうございました。
こ、これだ!と思いました。
また、何かありましたら、よろしくお願いします。

お礼日時:2002/10/28 05:23

同一日付内というのが前提ですが、


(明けて1時は25:00と入力)
E1に5:00
F1に22:00とおいて
C1は、
=IF(B1>F1,IF(A1>E1,F1-A1,F1-E1),IF(A1>E1,B1-E1,B1-A1))
D1には、
=IF(AND(B1<F1,A1>E1),"",IF(A1<E1,E1-A1,0)+IF(B1>F1,B1-F1,0))

いかがでしょう。

そうそう、セルの書式設定を
[h]:mm
にしておいてください。
当方エクセル2000です。
    • good
    • 0
この回答へのお礼

ありがとうございました。
やっぱりこういう事もできるのですね。
勉強あるのみです・・・。

お礼日時:2002/10/28 05:20

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