

出退勤のデータを切り上げ、切り下げしたいです。

30分単位で切り上げなどを行いたいのですが、  
勤務時間帯が下記となっており、休憩時間が70分なので退勤時間がきれいな単位で区切られません。

勤務時間帯：8:30～17:40

【例】  
出勤：8:01 →8:30と表示させたい  
退勤：17:41 →17:40と表示させたい

出勤：8:29 →8:30と表示させたい  
退勤：18:09 →17:40と表示させたい

出勤：8:30 →8:30と表示させたい  
退勤：18:10 →18:10と表示させたい

出勤：8:31 →9:00と表示させたい  
退勤：18:11 →18:10と表示させたい

調べてみたのですが、CEILINGやFLOOR関数を使えば切り上げ・切り下げができるようですが、  
任意の時間から30分単位での切り上げ・切り下げなどは調べてもわかりませんでした。  
何かアドバイスいただけますとありがたいです。

以上よろしくお願いいたします。


CC BY-SA 4.0
2022-06-01T12:00:54.283
89182
2022-06-02T09:05:59.323
2022-06-02T01:00:38.173
3060
51542
question
excel google-spreadsheet
時間の切り上げ・切り下げをしたい


IF関数とAND関数で、条件式を作ればできそうです。

=IF(H1<TIME(8,30,0),"8:30",IF(AND(H1>=TIME(8,31,0),H1<TIME(9,1,0)),"9:00"))

=IF(H2<TIME(18,10,0),"17:40",IF(AND(H2>=TIME(18,10,0)),"18:10"))


CC BY-SA 4.0
2022-06-01T20:58:31.057
89188
2022-06-01T23:53:36.843
2022-06-01T23:53:36.843
50767
50767
89182
answer


> 休憩時間が70分なので退勤時間がきれいな単位で区切られません。

  1. `出勤時刻`を切り上げる
  2. `退勤時刻 - 出勤時刻 - 休憩時間`の`勤務時間`を算出
  3. `勤務時間`を切り下げる
  4. `出勤時刻 + 勤務時間 + 休憩時間`で`退勤時刻`を算出

とかどうでしょう。


CC BY-SA 4.0
2022-06-01T21:19:30.547
89189
2022-06-01T21:19:30.547
4236
89182
answer

[code]

    出勤　=TIME(HOUR(A1),CEILING(MINUTE(A1),30),0)
    
    退勤　=TIME(HOUR(A2),FLOOR(MINUTE(A2)-10,30)+10,0)
    
[/code]


CC BY-SA 4.0
2022-06-02T09:05:59.323
89199
2022-06-02T09:05:59.323
52409
89182
answer