• 締切済み

エクセルで勤怠の残業手当を計算したいのですが...

 エクセルにて勤怠表を作成しようと思っております。各セルに開始時間、終了時間、拘束時間、休憩時間、実働時間、残業時間、残業手当が表示されるようにしてあります。開始、終了、休憩は手入力でそれ以外は計算式が入っています。  そこで質問なのですが、例えば開始時間8:30、終了時間18:00、休憩時間1:00、通常労働時間8:00とすると残業時間が0:30になります。残業手当は30分毎に500円つけたいので残業手当のセルにROUNDDOWNを使っていて、この場合本来500円と表示されるところ0円となってしまいます。仮に残業時間が0:31となるように入力すると500円と表示されますが、残業時間がちょうど0:30だと0円になってしまいます。ちなみに計算式は=ROUNDDON(I2/"0:30",0)*500です。I2セルは0:30となっております。  ご回答よろしくお願いいたします。

みんなの回答

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

I2は計算式が入っているんですよね? とすれば演算誤差が発生しているのだと思います。 =FLOOR(I2+"0:0:0.1","0:30")/"0:30"*500 とすればよいと思います。 演算誤差については参考URLをご覧下さい。

参考URL:
http://pc.nikkeibp.co.jp/pc21/special/gosa/index.shtml
kuni02801
質問者

お礼

早速のご回答ありがとうございます。そうです、I2のセルには終了-開始-休憩-"8:00"という式が入っています。  「FLOOR」関数は使ったことがありません。これから会社に行って試させていただきます。=FLOOR(I2+"0:0:0.1","0:30")/"0:30"*500  本当にありがとうございます。助かります。

回答No.1

=ROUNDDOWN(I2/"0:30",0)*500 これで試しましたがあってますけどね。。。ラウンドダウンのスペルって事は無いですかね? ちなみに表示が0:30になっていてもI2セルにも式が入ってますよね? それに問題は無いですか?

kuni02801
質問者

お礼

早速のご回答ありがとうございます。ラウンドダウンのスペルは間違っていないと思います。残業時間が0:30を超えると正しく計算されます。  I2のセルには終了-開始-休憩-"8:00"と入力していて、今回の場合、残業時間が0:30と表示されています。もしかすると、この計算式やセルの表示形式に問題があるのかも知れないですね。もう一度良く見直してみます。  本当にありがとうございます。助かります。

関連するQ&A