|
こんにちは
いつもお世話になってます
今回はVBAというよりは、Excelの計算式で詰まったので、ここに投稿して良いものか迷ったのですが、他に信頼できるところが思い当たらなかったので投稿しちゃいました
ちょっと文が長くなります(スミマセン)
複雑なことはしていません
時間の計算をしようとしているのです
文字で説明すると面倒なのでサンプルを出します
(例)
9時出社・18時退社を所定の勤務時間として、所定外の時間の合計を求める
そして、分単位は時間単位に切り上げ(4:15→5:00)
A B C D
1 9:00 18:15 1:00 =(B2-A2-C2)-"8:00"
2 9:00 18:15 1:00 =(B2-A2-C2)-"8:00"
3 9:00 18:15 1:00 =(B2-A2-C2)-"8:00"
4 9:00 18:15 1:00 =(B2-A2-C2)-"8:00"
5 =SUM(D2:D5)
6 =CEILING(D6,"1:00") ←ココがおかしい
D5に4日分の所定外時間の合計がでます
D6に所定外時間の合計を切り上げた時間が出ます
上記の例では、
D1〜D4は『0:15』となります
D5は0:15*4で『1:00』と表示されます
D6はこの場合、分を切り上げ(CEILING)します
分が00ということは切り上げするものが無いので『1:00』と表示されるはずです
しかし、なぜか『2:00』と表示されます
どうやら『計算によって求められた0:15』が『4つ以上』あり、D5の『SUMで1時間単位』のピッタリな数値になった場合にこの現象が起こるようなんです
この条件に当てはまらない場合は、D6は『1:00』と表示されます
また、D1〜D4に『0:15』を手入力した場合はD6は『1:00』となりました
もうわけが分かりません(TT
これってExcelのバグなんでしょうか??
それとも私が悪いのでしょうか??
どなたか分かる方いましたらお願いします〜m(_ _)m
ちなみに以下の環境のどれもダメでした(TT
WinXP Pro + Excel2003
WinXP Pro + Excel2002
Win98SE + Excel2000
Win2000Server + Excel2002
|
|