[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]
『時間の切り捨て・切り上げ』(woods)
勤務時間数を15分単位で丸めたいのですが、0〜9分超過までは0、10〜15分までは15となるようにするにはどういう関数を使えば良いでしょうか?
例えば、3時間23分なら3時間15分に切り捨て、4時間40分なら4時間45分に切り上げとなります。
よろしくお願いします。
< 使用 Excel:Excel2019、使用 OS:Windows10 >
=TEXT(CEILING(FLOOR(ROUND(時間数*24*60,),10),15)/24/60,"[h]:mm")
...的な感じでしょか?
(白茶) 2021/08/25(水) 18:59
あれ〜...? どうなってんだこれ。やっぱ分かんないス^^;
=TEXT(FLOOR(ROUND(時間数*24*60,)+FLOOR(MOD(ROUND(時間数*24*60,),15),10),15)/24/60,"[h]:mm")
(白茶) 2021/08/25(水) 19:28
あらら、これだと =TEXT((FLOOR(ROUND(時間数*24*60,)-10,15)+15)/24/60,"[h]:mm") とやってる事一緒か。
はず〜wwww (もうやめときます^^;)
(白茶) 2021/08/25(水) 19:33
=CEILING(A1-"0:09","0:15") (どん) 2021/08/25(水) 19:52
あ。一点だけ。
[h]:mm形式の数値のまま切り捨てたり大小比較する場合、 例えば、[0:03]を3つ合計した[0:09]と、リテラルな[0:09]とでは 結果が違ってきたりしますのでご注意くださいね。
CEILING("0:03"*3-"0:09","0:15") ← 0:15 CEILING("0:09"-"0:09","0:15") ← 0:00
操作しようとしている時間数が集計値であったり、 足し引きした後の数値である場合は、そういった目に見えない誤差を含んでいますから。
(白茶) 2021/08/26(木) 09:22
ご希望の内容がよく理解できていないかもしれませんが、試しにやってみました。 =TIME()関数が、24時間以上は、打ち止めとなっているので、難しいです。 戻り値は、数値(日付値)のつもりです。
A B 1 23:08 23:00:00 =--(TEXT(A1,"[h]")&":"&VLOOKUP(MINUTE(TEXT(A1,"[h]:m")),{0,0;10,15;25,30;40,45;55,60},2)) 2 23:09 23:00:00 3 23:10 23:15:00 4 23:15 23:15:00 5 23:24 23:15:00 6 23:25 23:30:00 7 23:35 23:30:00 8 23:40 23:45:00 9 23:45 23:45:00 10 23:54 23:45:00 11 23:55 24:00:00 12 23:58 24:00:00 (6up) 2021/08/29(日) 18:20
[ 一覧(最新更新順) ]
YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki.
Modified by kazu.