• 締切済み

エクセルで休憩時間算出

エクセル初心者です。 エクセルで、休憩時間、稼働時間の算出をしたいと思っています。 作業開始時刻、作業終了時刻が入力値で、稼働時間、休憩時間、稼働時間を求めたいです。 休憩時間は、稼働時間が4時間毎に30分休憩、 12時から13時にまたぐ場合は、1時間休憩で計算したいですが、どうもこの部分が思いつきません。 アドバイスお願いします。

みんなの回答

  • don9don9
  • ベストアンサー率47% (299/624)
回答No.6

No.5の回答の最後は ×本件では稼働時間数(昼休み除く)を4時間単位で切り捨てて、それに30分をかけることで休憩時間数を計算しています。 ○本件では稼働時間数(昼休み除く)を4時間単位で切り捨てて、それを4時間で割って30分をかけることで休憩時間数を計算しています。 の誤りです。失礼しました。

  • don9don9
  • ベストアンサー率47% (299/624)
回答No.5

No.2,3です。 仮にA1が開始時刻、B1が終了時刻だとすると =IF(COUNT(A1:B1)=2,MIN("13:00",MAX("12:00",B1))-MAX("12:00",MIN("13:00",A1)),"0:00"*1) という式で、A1の時刻~B1の時刻と12:00~13:00とで重なっている時間数が出せます。 (※夜勤などで稼働時間が日をまたぐことはないという前提です) これを踏まえて、以下のような式でどうでしょうか。 <昼休みを挟んだら稼働時間がリセットされる場合> 時間数を午前・昼休み・午後と分けて計算します。 A列…開始時刻 B列…終了時刻 C列…午前(0:00~12:00)の稼働時間数(作業列) D列…昼休み(12:00~13:00)の時間数(作業列) E列…午後(13:00~24:00)の稼働時間数(作業列) F列…稼働時間数 G列…休憩時間数 とします。 C1の式 =IF(COUNT(A1:B1)=2,MIN("12:00",MAX("0:00",B1))-MAX("0:00",MIN("12:00",A1)),"0:00"*1) D1の式 =IF(COUNT(A1:B1)=2,MIN("13:00",MAX("12:00",B1))-MAX("12:00",MIN("13:00",A1)),"0:00"*1) E1の式 =IF(COUNT(A1:B1)=2,MIN("24:00",MAX("13:00",B1))-MAX("13:00",MIN("24:00",A1)),"0:00"*1) F1の式 =IF(COUNT(A1:B1)=2,B1-A1-G1,"0:00"*1) G1の式 =FLOOR(C1,"4:00")/"4:00"*"0:30"+D1+FLOOR(E1,"4:00")/"4:00"*"0:30" <昼休みを挟んでも稼働時間がリセットされない場合> 単純に終了時刻と開始時刻の差分の時間数を計算します。 A列…開始時刻 B列…終了時刻 C列…昼休みの時間数(作業列) D列…稼働時間数 E列…休憩時間数 とします。 C1の式 =IF(COUNT(A1:B1)=2,MIN("13:00",MAX("12:00",B1))-MAX("12:00",MIN("13:00",A1)),"0:00"*1) D1の式 =IF(COUNT(A1:B1)=2,B1-A1-C1,"0:00"*1) E1の式 =C1+FLOOR(D1,"4:00")/"4:00"*"0:30" ※式についての補足 多くの式で =IF(COUNT(A1:B1)=2,~ としているのは、A1とB1が両方入力された場合のみ計算するようにするためです。 COUNT関数は、数値が入力されているセルの個数を返す関数です。 A1とB1に正しく時刻データが入力されていない(未入力あるいは文字列などが入力されている)場合、0:00を返すようにしています。 FLOOR関数は、指定した値の倍数の近似値に切り捨てる関数です。 =FLOOR(時間数,"0:15") などと指定すると15分単位で切り捨てることができます。 本件では稼働時間数(昼休み除く)を4時間単位で切り捨てて、それに30分をかけることで休憩時間数を計算しています。

  • KURUMITO
  • ベストアンサー率42% (1835/4283)
回答No.4

回答No1です。午前中でも4時間ごとに30分の休憩を入れるのでしたらE2セルには次の式を入力してください。 =IF(D2="","",IF(B2<="13:00"*1,MIN(C2,"13:00")-MAX(B2,"12:00"),0)+IF(B2<"8:00"*1,INT((MIN(C2,"12:00")-B2)/"4:00")*"0:30",0)+IF(C2>"16:00"*1,INT((C2-MAX(B2,"13:00"))/"4:00")*"0:30",0)) いずれのセルもセルの表示形式は時刻から選択します。休憩時間は勿論昼休みの時間が入っています。

  • don9don9
  • ベストアンサー率47% (299/624)
回答No.3

No.2です。 補足ありがとうございます。 しかし新たに疑問がでてきました。 >・4時間のうち30分が休憩時間(稼働3時間30分+休憩30分)」です。 >・4時間毎の30分休憩と昼休みが連続することはあります。 この通り解釈すれば「開始が8:00、終了が18:00」の場合は「8:00~12:00の4時間のうち30分が休憩、12:00~13:00が昼休み、13:00~18:00の5時間の間にもう30分休憩」となり >・「開始が8:00、終了が18:00」の場合、昼休みを除くトータル稼働時間は9時間ですが、それに対して発生する休憩時間は30分です。 休憩時間は30分ではなく1時間になるのではないでしょうか? それとも昼休みを挟んだら稼働時間が一度リセットされるのでしょうか? 例えば10:00から2時間稼働した後、昼休みとなった場合は、次に休憩が入るのは何時からですか?

  • don9don9
  • ベストアンサー率47% (299/624)
回答No.2

>4時間毎に30分休憩、 12時から13時にまたぐ場合は、1時間休憩 「4時間毎に30分の休憩」というのは「4時間働いたら30分休憩を与える(稼働4時間+休憩30分)」なのか「4時間のうち30分が休憩時間(稼働3時間30分+休憩30分)」なのか? 12:00~13:00というのはおそらく昼休みだと思いますが、昼休みはこの時間帯で固定なのか? その場合、作業開始か作業終了がその時間帯と重なった場合どうなるのか? 例えば「開始が12:30、終了が21:00」「開始が7:00、終了が12:45」などの場合は休憩時間は何時間何分になるのか? 昼休みは、稼動が4時間に満たなくても与えられるのか? 例えば「開始が10:00、終了が14:00」の場合は稼働3時間+休憩1時間となるのか? 4時間の稼働に対する30分の休憩と昼休みは相殺されるのか? 例えば「開始が8:00、終了が18:00」の場合、昼休みを除くトータル稼働時間は9時間ですが、それに対して発生する休憩時間は1時間か?30分か? (午前中の4時間に対する休憩は昼休みで相殺されるのであれば、午後の5時間に対する30分のみということになりますよね?) 4時間毎の30分休憩と昼休みが連続することはあるのか? 例えば「開始が7:30、終了が16:00」の場合、11:30で開始から4時間経過になるが、その場合30分休憩の後そのまま昼休み突入するのか? 補足いただけませんか。 不明瞭な要素が多く、現段階では式が組み立てにくいです。

THS08001
質問者

補足

言葉足らずですみません。補足いたします。 ・4時間のうち30分が休憩時間(稼働3時間30分+休憩30分)」です。 ・12:00~13:00昼休み固定です。 ・例えば「開始が12:30、終了が21:00」の時は、お昼休み分 30分+4時間毎の休憩2回で1時間30分休憩 ・「開始が7:00、終了が12:45」などの場合は休憩時間は30分+昼休み分45分 ・「開始が8:00、終了が18:00」の場合、昼休みを除くトータル稼働時間は9時間ですが、それに対して発生する休憩時間は30分です。 ・4時間毎の30分休憩と昼休みが連続することはあります。 よろしくお願いします。

  • KURUMITO
  • ベストアンサー率42% (1835/4283)
回答No.1

B2セルに作業開始時刻、C2セルに作業終了時刻、D2セルに稼働時間、E2セルに休憩時間とすればD2セルには次の式を入力します。 =IF(COUNT(B2:C2)<>2,"",C2-B2) E2セルには次の式を入力します。 =IF(D2="","",IF(B2<="13:00"*1,MIN(C2,"13:00")-MAX(B2,"12:00"),0)+IF(C2>"16:00"*1,INT((C2-MAX(B2,"13:00"))/"4:00")*"0:30",0)) ここで13時以前の作業開始では最高1時間までの休憩時間となりますが、4時間ごとに30分の休憩時間は13時以降の勤務時間について4時間ごとに30分の休憩時間となっています。

関連するQ&A

  • 複数の休憩時間がある場合の休憩時間の算出方法

    Excel で勤務表を作っていますが、 休憩時間が複数ある場合の休憩時間の算出方法が分かりません。 D5 10:00 (出勤時刻) E5 19:00 (退勤時刻) F5 休憩時間 H5 =E5-D5-F5 (実稼働時間) D6 12:00 (出勤時刻) E6 22:00 (退勤時刻) F6 休憩時間 H6 =E6-D6-F6 (実稼働時間) 休憩時間1 D38 12:00 (休憩開始時刻) E38 13:00 (休憩終了時刻) F38 1:00 (休憩時間1のトータル) 休憩時間2 D39 17:15 (休憩開始時刻) E39 17:30 (休憩終了時刻) F39 0:15 (休憩時間2のトータル) 休憩時間2の休憩時間帯が変わってもカスタマイズできるように (休憩時間3、4、5と実際にはあります) D38,D39,E38,E39は使わず F38とF39を使って、F5、F6セルに、休憩時間を算出したいです。 また、13時以降の出社の場合は、12時から13時の休憩時間を含めないようにもしたいです。 どんな関数を用いれば実現可能でしょうか? アドバイスよろしくお願い致します。

  • 休憩時間が数パターンある場合の休憩時間の計算

    勤務表を作成していますが、 休憩時間が複数ある場合の休憩時間の算出方法が知りたいです。 C3 9:00 (出社時刻) D3 20:00 (退社時刻) E3 (休憩時間) F3 =D3-C3-E3 (その日の稼働時間) C4 13:00 (出社時刻) D4 18:00 (退社時刻) E4 (休憩時間) F4 =D4-C4-E4 (その日の稼働時間) 休憩時間1 C40 12:00 (休憩開始時刻) D40 13:00 (休憩終了時刻) E40 1:00 (休憩時間の合計) 休憩時間2 C41 18:00 (休憩開始時刻) D41 18:30 (休憩終了時刻) E41 0:30 (休憩時間の合計) 休憩時間自体は6パターンあります。 休憩時刻が変わった際にも対応できるよう E40やE41を使って、退社時刻によって 休憩時間を算出できるようにしたいです。 また、13時に出社した時に12:00-13:00の休憩時間を カウントしないようにもしたいです。 Excel 関数のアドバイスを よろしくお願い致します。

  • 稼働時間の算出計算式を教えてください

    稼働時間を自動で計算する式を教えてください スタート時間 と 終了時間を入力すると稼働時間(分で可)がでるエクセルの式入力を教えてください  ただし朝の休憩時間10:00~10:05の5分 昼食時間12:00~12:40の40分   午後の休憩時間15:00~15:10の10分及び残業休憩6:00~6:05の5分は稼働時間に入れない式を教えてください   就業時間は8:30~19時までの間の時間帯での稼働時間の計算式入力方法を教えてください  よろしくお願い致します。

  • エクセルにて作業時間(分で表示)を出すには?

    エクセルにて「開始時刻」と「終了時刻」から作業時間の値を出したいのですが、 「開始時刻」と「終了時刻」のセルにはTIME関数(例 =TIME(18,0,0))が入力されており、さらにそのセルの表示形式は[時刻]の[13時30分]と表示されています。 これらのセルから作業時間を算出して分で表示(例 30分)したいのですが、どうやったらいいのでしょうか?

  • エクセル上での時間集計

    エクセルを使用して作業日報を作成していますが、時間集計の方法と、集計時間に定数をかけて算出する方法を教えて下さい。日々の入力は、開始時刻9:00、終了時刻18:00、休憩1:00にて作業時間8:00(A)。これを1カ月繰り返して、作業時間を集計する(B)。このBに6000を掛けて¥000,000.-みたいな表示をしたいのです。宜しくお願いします。

  • EXCELでの時間計算(休憩時間の差引)について

    パートさんの遅刻・早退・外出時間を自動計算する表を作っていますがうまく作れません・・・ 下記の場合どうしたらよいでしょうか? 例えば遅刻の合計時間を算出するのに開始時刻から終了時刻を引き算しますが 10:20~10:30、 12:00~12:40、 14:50~15:00、は休憩時間なので自動的 に差し引きたいと考えています。 遅刻の時間内に、休憩時間である10:20~10:30が含まれれば10、 12:00~12:40が含まれれば40、14:50~15:00が含まれれば10を引くという感じです。 どのような計算式にすればよいのでしょうか? ちなみに勤務時間は8:30~17:00です。 例えば、 (例)セル【B2】8:30(開始)セル【B3】13:00(終了)の場合、セル【B4】には50分を差引いた 3:40の合計時間を算出したいです。 色々調べて、B4に以下の式を入力してみましたが、どうもうまくいきません。 =IF(B3<>"",B3-B2-IF(TEXT(B3,"hh:mm")>"15:00","1:00",IF(TEXT(B3,"hh:mm")>"12:40","0:40",IF(TEXT(B3,"hh:mm")>"10:30","0:10","0:00")))) どうぞ宜しくお願いいたします。

  • Excel で作業時間を自動計算

    過去の投稿を検索したのですが見つからなかったので質問します。Excel 2000で作業時間を自動計算させるという単純な処理です。 B1に開始時刻(8:15など)、C1に終了時刻(16:45など)を入力すると、D1にその時間が自動で入力されるようにするには、どういう関数をどう使えばよいのでしょうか。ただし、休憩時間は考える必要はありません。

  • エクセルでの時間表示について(8:30を8.50にしたいです。)

    現在、給与計算をしているのですが、 表としては下記のように作っています。 時給 開始時間 終了時間 休憩 稼働時間 支払 1500   9:00   19:00   60         =稼働時間×時給 終了時間から開始時間を引けば稼働時間は出ると思うのですが、 (この部分も自信がありません…) 30分単位や15分単位を計算するときに0.5や0.25にしたいのです。 はじめは手で計算するときのように『分』を60で割ればいいのかと 思ったのですが、うまくいきませんでした。 少しわかりづらいかもしれないのですが、 是非、上記のような計算が出来る関数をご教授ください。 宜しくお願いいたします。

  • エクセル勤務表で昼休憩を挟んだ時の休憩算出方法

    エクセルで添付のような勤務表を作成しています。 労働時間(表中・小計)に応じた休憩時間は自動算出出来るようになったのですが、まだ課題がありまして… それは、お昼休憩を挟んだ時の休憩時間についてです。 うちでは、お昼を挟むと、勤務時間に関係なく1時間の休憩になります。(お昼休憩) 例えば、9時~18時だと、小計9時間・休憩1時間(8時間以上なので)・実労働(表中・合計)時間8時間となるので大丈夫なのですが。 9時~15時の勤務だと、小計6時間・休憩30分・実働5時間30分になってしまいます。 これを、小計6時間・休憩1時間・実働5時間になるように計算させたいのです。 表中の各計算式は以下です。 C8→勤務開始を入力 D8→勤務終了を入力 D8の小計→=IF(D8<C8,1+D8-C8,D8-C8) F8の休憩→=IF(E8<"4:00"*1,0,IF(E8<"6:00"*1,10,IF(E8<"7:00"*1,30,IF(E8<"8:00"*1,40,60))))/24/60 G8の合計→=E8-F8 です。 アドバイスよろしくお願いします。

  • エクセルでの時間計算について

    時間計算について質問です。 図のような仕事上にかけた時間の計算をしたいのですが。終了時刻と休憩時刻で空白のセルがあるとマイナスになってしまします。 計算としてはC行の終了時刻からB列の開始時間を引き、休憩があればさらにマイナスで計算してみています。 終了時刻と休憩時刻で空白のセルがあるときには計算をせずすべてのセルが埋まったら計算結果を表示することは可能でしょうか? 現在ですと合計時間のところでマイナスになってしまい、すべて入力 がされていないと正確な数値になりません。 作業時間はその後の計算の都合上時間表示ではなく数字として表示させています。

専門家に質問してみよう