[[20050804111046]] 『計算したあとの結果の数値について』(好慧) ページの最後に飛ぶ

[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]

 

『計算したあとの結果の数値について』(好慧)
 おはようございます。タイムカードを入力したあと、拘束時間から、休憩時間を
 引き、実際の労働時間を出したいんですがうまくいきません。教えて下さい。
 
   A B C D   E      F      G      H      I        J        K
 1          月日  入   出   拘束  昼休憩  時間換算        
 2          7/1   17:55   21:08    3        0      2.66        
 3

 [H2]には=IF(F2*G2=0,"",(FLOOR(G2,"0:30")-CEILING(F2,"0:30"))*24)
 [J2]には=IF(F2*G2=0,"",ROUNDDOWN(((H2*60)-(H2-1)*10)/60,2)-I2)

 上記の場合、@H列で拘束時間を出し
       AJ列で60分につき10分の休憩をとるのでその時間を引いています
        ※最後の1時間(20時から21時)は休憩なしです。
         したがって3時間拘束の場合は2回の休憩で20分引く
              4時間拘束の場合は3回の休憩で30分引く
              ・・・という風になっています。

 ここで、例えば、17:28入で18:01出の場合の様に30分の場合
  @休憩時間を引いているため、拘束が0.5となり(分計算で30分)
   ここから10分の休憩を引き時間換算の列が0.33(20分)にしたいところ
   0.58になります。H2-1の所で、0.5-1の計算をして負の数になるから。
   そこで、ROUNDDOWNの前にIFを使って、
   =IF(F2*G2=0,"",IF(H2=0.5,0.33,ROUNDDOWN(((H2*60)-(H2-1)*10)/60,2)-I2))
 としたのですが、計算結果が反映されません。H2の拘束時間が数値として
 反映されていないからでしょうか?ご教授お願い致します。

 また、(H2-1)は休憩回数を出す事を意図しているんですが、上の拘束時間が
 2.5や3.5のように30分単位になった場合、(2.5-1)*10=15、(3.5-1)*10=25
 で計算されますが、本来は2.5の場合は20分、3.5の場合は30分にしたいんですが
 可能でしょうか?

 整理しますと・・・ 
    A B C D   E      F      G      H      I        J        K
  1          月日  入   出   拘束  昼休憩  時間換算        
  2          7/1   17:55   21:08    3        0      2.66        
  3          7/2   14:25   15:01   0.5       0       0.33        [0.58]
  4          7/3   18:25   21:08   2.5       0       2.16        [2.25]
  5          7/4   17:25   21:08   3.5       0       3.00        [3.08]

 となるようにしたいんですが、うまくいくのは2行目のH列が整数になる場合だけ
 なんです。  [   ]内の表示はNGなんです。どうしたらイイでしょうか?
 よろしく、お願い致します。

 =IF(F2*G2=0,"",
IF(H2<2,ROUNDDOWN((H2*60-10)/60,2)-I2,
ROUNDDOWN(((H2*60)-(ROUNDUP(H2,0)-1)*10)/60,2)-I2))
 こういうことでしょうか? (Hatch)

60分につき10分の休憩をとるとは60分単位で10分休憩ですか?

例で30分の場合も10分の休憩となっていますが、30分以上でも10分の休憩をとるようですね。

この条件を明確にしなければいけません。

実働時間と休憩の関係をリストで明示して下さい。

(wisemac21)


 Hatch様
 >こういうことでしょうか?
 そういうことでした・・・ありがとうございました。解決しました。
 もしよければ、H2<2の意味するところをお教え頂けませんでしょうか?
 もうしわけありませんが・・・。

 Wisemac21様
 質問の仕方が悪くて申し訳ありませんでした。このレスを私のようなエクセル初心者
 が参考にされるかもしれませんので、「質問の条件」を書きます。

 拘束時間が3時間の場合
 【17:55 〜 21:10 の場合】
   実働時間       休憩
   18:00〜18:50  18:50〜19:00  ← 実働50分、休憩10分
   19:00〜19:50  19:50〜20:00  ← 実働50分、休憩10分
      20:00〜21:00     なし   ← 実働60分、休憩0分
                   『実働時間=50+50+60=160分⇒2.66時間』
 拘束時間が3時間30分の場合
 【17:25 〜 21:10 の場合】
   実働時間       休憩
   17:30〜17:50  17:50〜18:00  ← 実働20分、休憩10分
   18:00〜18:50  18:50〜19:00  ← 実働50分、休憩10分
   19:00〜19:50  19:50〜20:00  ← 実働50分、休憩10分
      20:00〜21:00     なし       『実働時間=20+50+50+60=180分⇒3.00時間』

  拘束時間が0時間30分の場合  
 【17:25 〜 18:10 の場合】
   実働時間       休憩
   17:30〜17:50  17:50〜18:00  ← 実働20分、休憩10分
                                   『実働時間=20分⇒0.33時間』

 以上です。本当にありがとうございました。
 (好慧)

 >H2<2の意味するところ
大雑把に私が解釈した計算を書いています。式を解読すれば分かるはずですが、
拘束時間が2未満の時は休憩10分
拘束時間が2以上の場合、拘束時間を整数に切り上げ、その時間-1に10分を乗じたものが休憩時間
としてあります。
よって、
 >最後の1時間(20時から21時)は休憩なしです。
 この20時〜21時が固定された時間で、18:00〜20:00の場合は20分の休憩とかだったら
 適当でない数式です。   (Hatch)

 Hatch様
 解説ありがとうございました。理解できました。
 また、18:00〜20:00は10分の休憩ですので教えていただいた数式は「適切」な数式
 でした。本当にありがとうございました。
 (好慧)

リストから判断すると、休憩時間は17:50〜18:00,18:50〜19:00,19:50〜20:00の3回と解釈されます。

18:00〜20:00は10分の休憩ですので→2回で20分になるのでないかと判断されますが??

(wisemac21)


 >最後の1時間(20時から21時)は休憩なしです。
 の(20時から21時)は例題の場合であって、「最後の1時間は休憩なし」の計算
 ということのようです。 だから 2h-1h=1h分の休憩10分でOKなのでは?
 # 質問者じゃないけど、この様に解釈しました  (Hatch)

 Hatch様、wisemac21様
 質問者の好慧です。
 質問の仕方がまずくて本当にごめんなさい。
 出勤者はいろりろなパターンがありまして、
     18:00〜21:00
     17:00〜21:00
     14:30〜19:00  等で、Hatch様に解釈して頂いた計算になります。
       ※「最後の1時間は休憩なし」の計算になります。
 ただ、同一人物で一日の業務内容が変わる(=時間給が変わる)ため、30分の計算が
 必要でした。
 (例)拘束時間4時間30分 15:30〜20:00
         業務A 15:30〜16:00
     業務B 16:00〜20:00   のような場合です。
     この場合、実働時間は、業務A= 20分  (休憩10分)
                業務B=210分  (休憩30分)
      業務Aの休憩時間帯(15:50〜16:00)は、仕事の最後ではないので、
   強制的に休憩してもらっています。退社する最後の1時間のみ60分間通しで
   勤務してもらっています(10分休憩してから、タイムカードを押すってのも
   無駄があると思うので・・・)

 私のつたない質問とリストの作成に関して、ご迷惑掛けて本当にすみませんでした。
 (好慧)


コメント返信:

[ 一覧(最新更新順) ]


YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki. Modified by kazu.