• 締切済み

エクセルの数式で困っています。

初めて質問させて頂きます。 アルバイトの給与計算表を作っていて、今まで使っていたテンプレートを改良したいと思います。 現在 A1 始業時間 B1 丸めた時間15分単位 C1 終了時間 D1 丸めた時間15分単位 E1 休憩時間 F1 通常勤務時間 G1 深夜勤務時間 H1 通常時給計 I1 深夜給計 J1 1日時給合計 となっています。 22:00までの出勤は=IF(OR(B5=" ",D5=" ")," ",IF(AND(B5<TIME(22,0,0),D5>TIME(22,0,0)),TIME(22,0,0)-B5,IF(AND(B5>TIME(22,0,0),D5>TIME(22,0,0))," ",(D5-B5)-E5))) で計算できるのですが、22:00を超えて出勤している社員の休憩を引いた時間が出てきません。 分かりづらい文章ですが、ご教授いただけますでしょうか?

みんなの回答

  • Cupper
  • ベストアンサー率32% (2123/6444)
回答No.1

■補足要求 たぶん質問の内容だけでは説明不足 B1と D1の説明もおざなりですし、具体的な仕様を明らかにしないと 相談に乗ってくださる方に過大な負担を強いることになります (22時以降は深夜業とかそう言った仕様です) ■アドバイス 一つの数式で片付けようとするのではなく、いくつかの作業列に途中の計算結果を表示するようにして その結果を集計するような方法を採用されてはいかがですか そのほうが分かり易く間違いもなく、項目数の制限も気にしないで済みます 時間は  TIME(22,0,0) と書いても  "22:00" または "22:00:00" と書いても同じですから、使用する関数を減らすことができ、また見やすいですよ 処理能力の低いパソコンで使うときは後者の記述のほうが早く動いてくれます

somnus1978
質問者

お礼

お早い回答&ご指摘ありがとうございます。 B1・D1に関しましては、勤務表の各自が記入した時間を入力し それを基に=FLOOR(C6,"00:15")で反映されるようにしています。 説明が難しいですが、 (B1-A1)-E1=F1で通常勤務時間を出したく G1で深夜時間22:00~の時間を算出 休憩時間を引くのは、通常時間からだけです。 お手数おかけします。

関連するQ&A