プロが教える店舗&オフィスのセキュリティ対策術

エクセル 統計 時間 についての質問です。
セルにh:mmの形式で時間を記入してあります。
そこで、以下のような条件を加えたいのです
X:00~X:15未満→X:00に切り捨て
X:15~X:30未満→X:30に切り上げ
X:30~X:45未満→X:30に切り捨て
X:45~Y:00未満→Y:00に切り上げ
例をあげさせていただきますと、
8:20→8:00
8:25→8:30
8:40→8:30
8:50→9:00
です。
良い関数の組み合わせを教えてください。
よろしくお願い致します。

A 回答 (4件)

=FLOOR(A1+"0:15","0:30")



でいかがでしょうか?

参考URL:http://www2.odn.ne.jp/excel/waza/function.html#S …
    • good
    • 0
この回答へのお礼

ご回答、誠にありがとうございます。
かなりシンプルで使いやすかったです!
ありがとうございます!

お礼日時:2008/04/14 21:53

厳密を期すためにさらに補足させていただきます。



シリアル値×24 → 数値 → 数値を2倍して四捨五入 → それを2で割る → 24で割ってシリアル値に戻し、h:mmの書式で表示

というのが一連の流れ(今回の関数)の意味です。

何度も補足ですみません。
    • good
    • 0
この回答へのお礼

いえいえ、とんでもございません。
倍数の四捨五入は関数一覧表では
使用方法が分からなかったのですが、
時間について、ここまで利用できることに
かなり理解を深めることが出来ました。
心よりお礼を申し上げます。

お礼日時:2008/04/14 21:52

少し補足します。



シリアル値 → 数値 → シリアル値

といった処理をしていて、数値の四捨五入で質問内容のような四捨五入を実現しているのです。

なお、先の回答中の
  先に2倍したものを元に戻すために 
は、
  先に48(24×2)倍したものを元に戻すために
の書き間違いです。
    • good
    • 0
この回答へのお礼

早速のご回答、誠にありがとうございます。
二倍で四捨五入!
そのような考え方があるとは大変驚きました!
大変、勉強になりました!
ありがとうございました。

※ご指摘の通り、8:20→8:00の誤りです。

お礼日時:2008/04/13 22:19

8:20→8:00と書かれているのは、8:10→8:00などの間違いであると考えていいですよね。


A1セルの8:10などのh:mm形式の時刻が入っているとして、B1セルに質問のような切り上げ切り捨てを行うにはB1セルに次の関数をいれてあげればOKです。
 
=ROUND(A1*24*2,0)/48

時刻のシリアル値を数値に変換するために、A1*24とし、それを2倍したものを小数点第一位を四捨五入して、先に2倍したものを元に戻すために、2*24で割ってやっているわけです。最後にB1セルの書式設定もh:mmにしなければなりません。A2以降にも時刻データが入っていれば、B1の数式をB2以降にコピーしてあげればOKです。

なぜ上の方法でいいのかは(→の右の数は2倍したもの)
  8:10 = 8.167 → 16.334
8:15 = 8.25 → 16.5
8:25 = 8.417 → 16.834
8:30 = 8.5 → 17.0
8:40 = 8.667 → 17.334
8:45 = 8.75 → 17.5
8:50 = 8.833 → 17.666
であることから、普通に四捨五入したのでは質問のような切り捨て切り捨てはできないが、2倍して四捨五入すればOKなことがわかっていただけますか?
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!