[[20090818091928]] 『時間の計算について』(ありんこ) ページの最後に飛ぶ

[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]

 

『時間の計算について』(ありんこ)

勤怠集計をしています。A1:出勤時間 A2:退社時間 A3:勤務時間

A1とA2に時間を入力すると、A3に勤務時間(30分単位)が出るようにし、

勤務時間が6時間を越える場合は1時間減らすようにしたいのですが、

どのようにすればいいのか教えていただけませんでしょうか?


 >A3に勤務時間(30分単位)が出るようにし
 どの様にしますか? 切り上げ・切り捨て・四捨五入

 >切り捨てでお願いします。

 >勤務時間が6時間を越える場合は1時間減らすようにしたいのですが
 もう少し具体的に記載下さい

 > 退社時間から出勤時間を差引きし、6時間以上になる場合は、差し引きした時間

   から1時間を引き、6時間未満であればそのままにするということなんですが。。

   例1)A1.出勤=8:30 A2.退社=17:00… 8.5h ⇒6.0h以上になるので

         8.5h−1.0h=7.5h …A3.勤務時間

   例2)A1.出勤=13:00 A2.退社=18:00⇒ 5.0h ⇒6.0h未満なので

                5.0h …A3.勤務時間

    上記のような説明で分かりますでしょうか?

    つたない説明で大変申し訳ないんですが、宜しくお願い致します。

   (ありんこ)


    A
 1  8:30
 2 14:30
 3

    A
 1  8:30
 2 14:20
 3

 A3に返したい値
 上のケースでは 5:00
 下のケースでは 5:30
(勤務時間は下のケースのほうが短いのに 返したい値は長くなる)

 ということでいいのでしょうか?

 (えくせる青年)2009/8/18 11:26

 <そうです。ありがとうございます。

  すいません、1つ訂正がありました。6時間以上ではなく、

  6時間を越える(6時間ちょうどである場合を含まない)でした。

   
 @
     A

  1  8:30
  2 14:30
  3

 A

     A
  1  8:30
  2 15:00
  3

 である場合には、

 @が6.0で、Aが5.5になります。

 表示の仕方も5:30ではなく、5.5(h)になるようにできれば

 ありがたいのですが、お願いできますでしょうか?

 (ありんこ)
 

  


 >表示の仕方も5:30ではなく、5.5(h)になるようにできれば 
 24倍して下さい

     A
  1  8:30
  2 14:31
 この場合6.0 or 5.0


 ここのサイトのルールをはっきり把握しているわけではないので
 もし認識が違っているなら
 他の回答者の皆様 ご指摘願います。

 ありんこさんへ
 コメントする時は下の「コメント」欄に入力してください。
 他の回答にかぶせるような回答の仕方は
 わかりにくくなるのでやめたほうがいいです。

 ということは

    A
 1   8:30
 2   14:30
 3  

    A
 1  8:30
 2  14:50
 3

 上のケースでは 6:00
 下のケースでは 5:00
 (下のケースのほうが20分長いのに 返す値は1時間短い)
 ということですね。

 表示形式をユーザー定義で 0.0(!h) として

 演算誤差を考慮した数式
 =IF(TEXT(A2-A1,"h:mm")>"6:00",FLOOR(TEXT(A2-A1-"1:00","h:mm"),"0:30")*24,FLOOR(TEXT(A2-A1,"h:mm"),"0:30")*24)

 演算誤差を考慮しない(アバウトでもかまわない)数式
 =IF(A2-A1>"6:00"*1,FLOOR(A2-A1-"1:00","0:30")*24,FLOOR(A2-A1,"0:30")*24)

 (えくせる青年)2009/8/18 12:40

 追加です。

 IF関数を使用しない数式

 演算誤差を考慮
 =FLOOR(TEXT(A2-A1,"h:mm"),"0:30")*24-(TEXT(A2-A1,"h:mm")>"6:00")

 演算誤差を考慮しない
 =FLOOR((A2-A1)*24,0.5)-((A2-A1)*24>6)

 (えくせる青年)2009/8/18 12:59

 私の質問の主旨が理解できないようなので・・・

 >A1とA2に時間を入力すると、A3に勤務時間(30分単位)が出るようにし、 
 >勤務時間が6時間を越える場合は1時間減らすようにしたいのですが
 上の計算と下の計算が連動しているのかな?

 勤務時間は30分単位なので
 8:30 から14:50 までの勤務は 6時間20分であるが 勤務時間は 6時間  
 「勤務時間が6時間を越える」に該当するのか しないのか?   


えくせる青年さん、どうもありがとうございました!

あと、コメントのご指摘もありがとうございます。

初心者なもので、すいませんでした。

(ありんこ)


 解決済みですが

 途中の回答で2つほど ハンドルネームのない回答がありますが
 いずれも私の回答ではありません。

 (えくせる青年)2009/8/18 13:27


 勤務時間でひとくくりにしちゃうから回答者さんにわかりづらいのでは?
 6時間以下は在社時間=勤務時間で、
 在社時間が6時間を越えると、在社時間から1時間を引いて勤務時間を求めるって事ですよね?
 休憩時間かな。
 ・・・って、解決済みですね。(とおりすがり)

コメント返信:

[ 一覧(最新更新順) ]


YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki. Modified by kazu.