• ベストアンサー

休憩時間がある場合の時間計算

KURUMITOの回答

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

G22セルには次の式を入力します。 =IF(OR($E22="",$P22=""),0,MAX(MIN("17:00",$P22)-MAX($E22,"9:00"),0))-IF(OR($O22="",$F22=""),0,MAX(MIN($O22,"17:00")-MAX($F22,"9:00"),0)) この式は17:00までの勤務時間の計算で休憩時間を差し引いたものです。 H22セルには次の式を入力します。 =IF(OR($E22="",$P22=""),0,MAX(MIN("22:00",$P22)-MAX($E22,"17:00"),0))-IF(OR($O22="",$F22=""),0,MAX(MIN($O22,"22:00")-MAX($F22,"17:00"),0)) この式は17:00以降で22:00までの勤務時間の計算で休憩時間を差し引いたものです。 したがってQ列やR列は必要ないでしょう。

mimi557788
質問者

お礼

早々のご回答ありがとうございます。 数式を理解するのに時間がかかってしまい、お返事が遅くなってしまい申し訳ありません。 こちらの計算結果は完璧でした。 私が使ったことのないORが出てきたので、戸惑いましたが 勉強になりました。 本当にありがとうございました。 足し算引き算、SUMしか使ったことがなかったのですが、 関数という便利な物に出会い、勉強すればする程エクセルの素晴らしさを感じていました。 ですが、今回は挫折しそうでした^^; 私の場合、式をパット見て理解出来ないので、日本語に置き換えて紙に書いて理解するので、本当時間がかかります。 KURUMITOさんはそんな事をしなくてもわかるとは思いますが、 こうして私が書いた式に目を通して回答して頂いたことを感謝します。 本当にありがとうございました。

関連する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 関数のアドバイスを よろしくお願い致します。

  • Excel:勤務時間の計算がうまくいかない。

    No.1468024の質問をした者です。 勤務表を作成しています。(Excel2002を使用) 終了時刻(D列)ー開始時刻(C列)ー休憩時間(E列)=当日の勤務時間を計算しています。 No.1468024の質問でアドバイスをいただき、以下のような計算式を記述しました。 <例> =AND(C13*D13)*(MIN(IF(AND(D13>="12:00"*1,D13<="13:00"*1),"13:00",D13),"17:40")-MAX(IF(AND(C13>="12:00"*1,C13<="13:00"*1),"12:00",C13),"09:00")-E13+FLOOR(MAX(D13,"18:00")-"17:59:59","0:15")) ほぼうまくいくのですが、開始時刻9:00終了時刻12:00とした場合、勤務時間4:00となり、間違ってしまいます。(正しくは勤務時間3:00。また開始時刻9:00終了時刻が12時から13時までの間の時刻で入力された場合も勤務時間3:00と出力したいです。) 休憩時間セルに以下のような計算式を書いています。 <例> =IF(COUNT(C13:D13)<2,0,IF(D13-"12:00"*1<=0,0,IF(C13-"12:00"*1>=0,0,IF(D13<"18:00"*1,"1:00","1:20")))) 休憩時間は12時から13時までの1時間。 終了時刻が17:40以降なら20分休憩時間が加算されます。 開始、終了が入力されていないと0:00表示。 言葉足らずでしたら、進んで補足させていただきますので、よろしくお願いします。

  • エクセルで空欄時に計算しない方法は

    皆様こんにちわ エクセルで次のようにして勤務時間を計算しているのですが D列(勤務開始時間)E列(勤務終了時間)F列(実働時間)G列(早出残業時間) 現在G列には次の数式が入っています =IF( MIN( "8:00",E2)>MAX( "4:00",D2),(MIN( "8:00",E2)-MAX( "4:00",D2)),0) +IF((MIN("22:00",E2)>MAX("18:00",D2)),(MIN("22:00",E2)-MAX("18:00",D2)),0) この数式ですとD・E列が空欄の場合G列に8:00が表示されてしまいます。 D・E列が空欄の場合G列に計算をさせない(もしくは0:00と計算)させるには どうすればよいでしょうか

  • Excel:勤務時間計の計算式がうまくいかない

    Excel2002を使用し、勤務表を作成しています。 以前こちらでアドバイスをいただき、作成することができました。 今回修正で、開始8:30終了17:05の場合、休憩45分、当日勤務時間7時間 50分と計算させたいのですが、何かアドバイスあればよろしくお願いし ます。 現在使用している計算式では以下のように計算されます。 開始8:00終了16:35の場合、休憩45分、当日勤務時間7時間50分 開始8:30終了17:05の場合、休憩60分、当日勤務時間7時間35分 ■8時-16時35分(定時)の場合 開始時刻:C列 終了時刻:D列 開始時刻を15分単位で切り上げる:P列:=CEILING(C7,"0:15") 終了時刻を15分単位で切り上げる:Q列:=CEILING(D7,"0:15") ■休憩時間 =IF(COUNT(C7:D7)<2,0,IF((P7<"12:30"*1)*(Q7>"13:15"*1),"0:45","0: 00"))+IF(D7>="16:50"*1,"0:15","0:00") 休憩時間は12:30から13:15までの45分。 終了時刻が16:35以降なら15分の休憩時間が加算。 開始、終了が入力されていないと0:00表示。 ■当日 勤務時間 =AND(C6*D6)*(MIN(IF(AND(D6>="12:30"*1,D6<="13:15"*1),"12:30",Q6), "16:35")-MAX(IF(AND(C6>="12:30"*1,C6<="13:15"*1),"13:15",P6),"08 :00")-IF((P6<"12:30"*1)*(Q6>"13:15"*1),"0:45","0:00")+FLOOR(MAX (D6,"16:50")-"16:49:59","0:15")) 開始、終了が入力されていないと空白 12:30~13:15の場合は12:30、16:35以降の場合は16:35、それ以外は終 了時刻のまま。 8:00以前は8:00、12:30~13:15の場合は13:15、それ以外は開始時刻の まま。 残業していないケースをIF文を使わずに計算したいため終了時刻が 16:50以前の場合は16:50と補正して、計算結果が00分になるように細工 。 言葉足らずでしたら、進んで補足させていただきますので、よろしくお 願いします。

  • 休日出勤時間の計算式

    残業手当計算シート(勤怠表と同様のものです。)を作成しているのですが、E列:出勤時刻、F列:退社時刻とし、I列に休日出勤手当(35%加算)相当時間が出るように計算式を入れたいのです。(22時~5時までの深夜労働部分を除いた時間)どのように入れたらよいのでしょうか。尚、J列には深夜労働の時間が出る計算式を次のように入れました。 =IF(OR(E8="",F8=""),"",MAX(F8+(F8<E8),22/24)-22/24) 結果、深夜労働を含む休日出勤をした場合、I列+J列となるようにしたいのです。 どうぞ宜しくお願いします。尚、平日の規定労働時間は8時間、休憩1時間です。

  • 再質問。給与計算について

    「給料計算をしたいと考えている B2に就業開始時間として数字が記載されている。 C2に休憩開始時間として数字が記載されている。 D2に休憩終了時間として数字が記載されている。 E2に就業終了時間として数字が記載されている。 記載されている数字は、 「1.2.3.4.5.6.7.8.9.10.11.12.13.14.15.16.17.18.19.20.21.22.23.24」のうちどれか。小数点にも対応してほしい。 ・例2 B2に「7.5」と入力されていたら就業開始時間は「7:30」ということ。C2に「10.5」と入力されていたら休憩開始時間は「10:30」ということ。D2に「11.5」と入力されていたら休憩終了時間は「11:30」ということ。E2に「16.5」と入力されていたら就業終了時間は「16:30」ということ。 時給は、以下のようになっている。 11時から14時の間だけ1000円。その他の時間は950円。 C2の時間からD2の時間は休憩時間なのでその間の休憩は0円とする。 上記の計算をした上でF2に解を出力。 =(MIN(D2,11)-MIN(C2,11))*950+(MEDIAN(11,D2,14)-MEDIAN(11,C2,14))*1000+(MAX(14,D2)-MAX(14,C2))*950+(MIN(F2,11)-MIN(E2,11))*950+(MEDIAN(11,F2,14)-MEDIAN(11,E2,14))*1000+(MAX(14,F2)-MAX(14,E2))*950 上の関数を使って小数点があっても計算ができるようにしたいです。 給与計算は小数点があっても7750がF2に出るようにして欲しいです

  • 休憩時間の与え方について教えて下さい。

    休憩時間の与え方について教えて下さい。 弊社は10時~18時(休憩1時間)が基本です。 7時間勤務で7時間をこえると1.25割増賃金で計算してます。 臨時で11時~17時勤務(休憩なし)で勤務の場合もあります。 この場合、17時以降は1.25割増賃金で計算してます。 これを利用して、臨時勤務をほぼ毎日し、 6時間勤務以上して残業時間をふやしているバイトがいます。 (休憩はとらずに、残業してます) 6時間を超える勤務時間の場合、休憩は45分以上与えなければならないのですが、 休憩せずに勤務しております。 契約書に、 「11時~17時勤務時に、17時以降残業する場合は、必ず1時間の休憩後に業務を行うこと。 休憩時は賃金の支給対象外とする。」 と記載するのは、有効でしょうか? ご回答のほど、よろしくお願いします。

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

    エクセルで添付のような勤務表を作成しています。 労働時間(表中・小計)に応じた休憩時間は自動算出出来るようになったのですが、まだ課題がありまして… それは、お昼休憩を挟んだ時の休憩時間についてです。 うちでは、お昼を挟むと、勤務時間に関係なく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:出社時間、D:退社時間 E:休憩時間 F:勤務時間  G:残業時間(1)(17:00から15分単位で発生) H:残業時間(2)(1)(18:00から15分単位で発生)があったとします。 現在、 Fの計算は=IF(D6="","",MIN(D6,"17:00")-MAX(C6,"8:45")-"1:00") Gの計算は=IF(D6="","",IF(D6>"17:10"*1,D6-"17:00",0)) Hの計算は=IF(F6="","",IF(D6>="18:15"*1,D6-"18:00",0)) で作成してますが質問は (1)Fの休憩時間1時間引く場合、"1:00"にせずに"F4"を引くとエラーになります (2)Gの残業時間は17時から発生しHは18時から15分おきに発生するのですが式をひとつに まとめて、「Dが17時を超えてたらGに表示、18時を超えていたらHに表示」にしたいです。 ちなみにGは時給\1600 Hは時給\2000となります。      C   D E    F  G   H 4 火 8:45 17:45 1 7:15 0:45 0:00 5 水 8:45 12:15 1 2:30 0:00 0:00 6 木 8:45 18:15 1 #VALUE! 1:15 #VALUE! 勉強不足で申し訳ありません。 どうぞよろしくお願い致します。