[[20171002094046]] 『シフト表を作ってます。この式にプラスして欲しい』(ねね) ページの最後に飛ぶ

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

 

『シフト表を作ってます。この式にプラスして欲しいです』(ねね)

B129 7:00 B130 18:00 C129 実働時間11.0 

D128 5:30 E128 6:00 F128 6:30とGHIとAK22:00まで時間が入力されてます

AW129 6:59  AW130には下の式  
=IF(OR(B129="公休",B129="有休",B129="会議",B129="研修",B129=0),"",(B129-$AW$128))
 
AW130 17:59  AW130には下の式
=IF(OR(B130="公休",B130="有休",B130="会議",B130="研修",B130=0),"",(B130-$AW$128))

D129に=IF(D128<$AW$129,0,IF(D128>=$AW$130,0,0.5))
E129に=IF(E128<$AW$129,0,IF(E128>=$AW$130,0,0.5))
F129に=IF(F128<$AW$129,0,IF(F128>=$AW$130,0,0.5))

AK129に=IF(AK128<$AW$129,0,IF(AK128>=$AW$130,0,0.5))
D〜AKまでセルに入力されております

この式を使ってC130の残業2.5 この残業時間を18:00以降に反映したいです
=IF(D128<$AW$129,0,IF(D128>=$AW$130,0,0.5))
ゼロと0.5なので0.4999でやりたいのですが知識をください
全くわからないので質問しました。
よろしくお願いいたします。

説明不足でしたらすみません

          

< 使用 Excel:Excel2003、使用 OS:WindowsXP >


=抜けばいいってことですか

>= 含まれる
> 含まれない
(++) 2017/10/02(月) 10:42


=IF(D128<$AW$129,0,IF(D128>=$AW$130,0,0.5))

=IF(D128<$AW$129,0,IF(D128>=$AW$130,0,0.4999))
(++) 2017/10/02(月) 10:46


抜くのではなく
プラスして欲しいのです
0と0.5は同じで
プラスでこの式を使ってC130の残業2.5 この残業時間を18:00以降に反映したいです
それを0.4999で表現したいのです
(ねね) 2017/10/02(月) 11:01

 現状の式だと7:00〜17:30が「0.5」、それ以外は「0」になりますよね。
 それにプラスして、どこからどこまでが「0.4999」になればいいんですか?

 >C130の残業2.5

 ↑ の説明が見当たらないけど「2.5」て何ですか?

 >AW129 6:59  AW130には下の式
                   ~~~~~
 AW130 → AW129の間違い?

 AW128には何が入力されてるんですか? 0:01?

 とりあえず確認だけ
(笑) 2017/10/02(月) 13:18

C130の残業2.5 どの様に割り出すのですか

18:00以降に反映したいです  B130の値のことですか?

B129 7:00 B130 18:00 C129 実働時間11.0               ここは縦で構成 
D128 5:30 E128 6:00 F128 6:30とGHIとAK22:00まで時間が入力されてます ここは横

GHI AK22:00 この意味も解らないです

横縦構成がわからないですよね
全体像が見えないです
(++) 2017/10/02(月) 13:33


 追加

 >=IF(OR(B129="公休",B129="有休",B129="会議",B129="研修",B129=0),"",(B129-$AW$128)) 

 上の式は ↓ だと何か問題ありますか?

 =IF(N(B129)>0,B129-$AW$128,"")

 AW129とAW130は使わなくてもできそうだけど
 一応確認
(笑) 2017/10/02(月) 13:42

C130の残業2.5 どの様に割り出すのですか
ここはC130のセルに参照されます
書き忘れてました

B1 129 7:00〜B1 130 18:00 B1 130が18:00なので
C130の残業2.5 この残業時間を18:00以降に
15:00なら15:00以降に
と結果によって変わります

D128  E128  F128  G128  H128  I128
5:30 6:00  6:30 7:00  7:30  8:00
この順番でAK128
     22:00
で続いてます。

(ねね) 2017/10/02(月) 14:05


結果で言えば
7:00〜18:00までのセルに0.5
18:00〜20:30までのセルに4.999
それ以外は0です
=IF(D128<$AW$129,0,IF(D128>=$AW$130,0,0.5)) で
ゼロと0.5は出来ているので残業の2.5を4.999としたいのです

(ねね) 2017/10/02(月) 14:13


=IF(AC128<$AW$129,0,IF(AC128>=$AW$130,0,0.5=IF(AC128>=AY129,0.5,0.4999)))
この式はどこが悪いのですか?うまくいきません

(ねね) 2017/10/02(月) 20:55


 回答者側は、状況が呑み込めていないんですよ。

 今の状態は、下図になっていると思うのですが。。

  行  _A_  __B__  _C_  __D__  __E__
 128                   5:30   6:00  :
 129       7:00    11  数式   数式  : 
 130       18:00  2.5              

 そこでちょっとお聞きします。

 (1)B129 は手入力ですね? これは始業時刻ですね?

 (2)B130 も手入力ですね? これは何を意味していますか?(終業時刻? 残業開始時刻?)

 (3)C129 は数式ですか?  数式ならどんな式ですか?

 (4)C130 は数式ですか?  数式ならどんな式ですか?

(半平太) 2017/10/02(月) 22:47


(1)B129 は手入力ですね? これは始業時刻ですね?
手入力ではなく参照しています 開始時刻です

 (2)B130 も手入力ですね? これは何を意味していますか?(終業時刻? 残業開始時刻?)
手入力ではなく参照しています 終了時刻+残業時刻です

 (3)C129 は数式ですか?  数式ならどんな式ですか?
数式です=IF(BF129>=5,(BF129-1),BF129)

 (4)C130 は数式ですか?  数式ならどんな式ですか?
='メニュー画面(勤務)'!K24/24

AW129 =IF(OR(B129="公休",B129="有休",B129="会議",B129="研修",B129=0),"",(B129-$AW$128))
AW130 =IF(OR(B130="公休",B130="有休",B130="会議",B130="研修",B130=0),"",(B130-$AW$128))

AY129 =B130-C130 残業を入れない終了時刻

この様な感じになります
(ねね) 2017/10/02(月) 23:17


 明確になった部分もありますが、謎が増えた分もあります。

 ここ
  ↓
 ='メニュー画面(勤務)'!K24/24

 ホントに「/24」ですか? 
  普通は「*24」だと思うのですが。

 ホントにC130が「2.5」なら(こちらは、$AW$128が何を意味するものか分からないので、それには触れず)
 こんなのでやっちゃいますね。
  ↓
 D129セル =IF(ISNUMBER($B129),LOOKUP(D$128+0.0001,CHOOSE({1,2,3,4},0,$B129,$B130,$B130+$C130/24),{0,0.5,0.4999,0}),"")

(半平太) 2017/10/03(火) 07:10


 一応私も考えてみたので回答。
 D129:=IF(AND(D128>=$B129,D128<=$B130),0.5,IF(AND(D128>=$B130,D128<=$B130+$C130/24),0.4999,0))

 >7:00〜18:00までのセルに0.5
 >18:00〜20:30までのセルに4.999

 同じセルに0.5と0.4999は表示できないので18:00は0.5、18:30は0.4999になります。

 あとC129に入っている数式、無駄な括弧がありますよ。
 =IF(BF129>=5,BF129-1,BF129)
(bi) 2017/10/03(火) 07:52

返信遅れました。
凄いですね!出来てます
しかもいままで使ってたところまで使わなくも省略してしまってます。
今回は分かりにくい説明から始まり理解して
助けていただきまして感謝してます。
ありがとうございました。

(ねね) 2017/10/04(水) 06:25


コメント返信:

[ 一覧(最新更新順) ]


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