[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]
『繰越日数を算出』(ばんばん)
いつも、お世話になってます。 下記の表を管理しているのですが、繰越日数を算出する為の数式を教えて下さい。 今はそれぞれ下の式を入れています。 繰越日数は、0.5日単位で繰り越され、消化される順序は昨年度の@繰越日数、A今年度支給日数の順に消化されます。 問題は、繰越日数が0.5日残っている状態で、1.0日休暇を取得した場合、 繰越日数の0.5日を0にしてから、今年度支給分から0.5日引きたいのですが、 今の式ではできません。 N7に入れる式をご教授下さい。
*今年度使用できる日数を算出する為の一覧* A B C D 8支給日 2006/4/1 9支給日数 12.0日 10繰越日数 4.5日 11合計日数 16.5日
C9=IF(OR(平成17年度!C9=3,平成17年度!C9=5,平成17年度!C9=7,平成17年度!C9=10),11, IF(平成17年度!C9=11,12,IF(AND(平成17年度!C9>11,平成17年度!C9<18),平成17年度!C9+2,20))) C10=平成17年度!C16 C11=SUM(C9:C10)
*管理台帳* G H I J K L M N 日付 休暇 休暇 申請 理由 残日数 支給日数 繰越日数 時間 種別 休出日 ______________________________________________________ 6 4/11 1.0 有休 ○ 15.5 12.0 3.5 7 4/12 1.0 有休 ○ 14.5 12.0 2.5 8 4/13 1.0 有休 ○ 13.5 12.0 1.5 9 4/14 1.0 有休 ○ 12.5 12.0 0.5 10 6/15 1.0 有休 ○ 11.5 11.5 0.0 ↑繰越が0.5日残っているので、そこから0.5日引きたい。 それから、今年度支給された分から0.5日引きたい。
残日数(L列)は、今年度4月に支給された日数=12.0日+昨年度の繰越日数=4.5日を足したもの。 支給日数(M列)は、今年度4月に支給された日数。昨年度の繰越日数が0.0日の場合は、今年度支給日数から今回取得日数を引く。 繰越日数(N列)は、昨年度支給された分の残りの日数。(0.5日単位)繰越分がある場合はまず、繰越分から消化される。
以上の条件で、現在、 L6=IF(J6="","",IF(I6="有",IF(J6="○",C11-H6,""),C11))←一覧で算出した日にちから引いてます。 L7=IF(H7="","",IF(J7="○",IF(I7="有",L6-H7,L6),"")) M6=IF(H6="","",IF(J6="○",IF(I6="有",IF(C10<=0,C11-H6,C9),C9)))←一覧で算出した日にちから引いてます。 M7=IF(H7="","",IF(J7="○",IF(I7="有",IF(N6<=0,M6-H7,M6),M6),"")) N6=IF(J6="","",IF($C$10-SUM(H6:H6)<=0,0,IF(I6="有",$C$10-H6,C10)))←一覧で算出した日にちから引いてます。 N7=IF(H7="","",IF(J7="○",IF(I6="有",IF($N6-H7<0,0,$N6-H7),N6),"")) の数式が入っています。
説明が、分かりにくいかもしれないのですが、よろしくお願い致します。
IFの条件は別として最後の部分だけですが、このようなことでしょうか? L7 =M7+N7 M7 =M6+(N7=0)*(N6-H7) N7 =MAX(0,N6-H7) (純丸)(o^-')b
純丸さま、ご教授ありがとうございます。
>最後の部分だけですが とコメントを頂いたので、それぞれ最後のIF関数の"偽の場合"に当てはめてみました。 …純丸さんがおっしゃっていた最後はここの事でしょうか? L7=IF(H7="","",IF(J7="○",IF(I7="有",L6-H7,M7+N7),"")) M7=IF(H7="","",IF(J7="○",IF(I7="有",IF(N6<=0,M6-H7,M6+(N7=0)*(N6-H7)),M6),"")) N7=IF(H7="","",IF(J7="○",IF(I7="有",IF($N6-H7<0,0,$N6-H7),MAX(0,N6-H7)),"")) 計算結果はあっているのですが、 もし違っていたら、ご指摘よろしくお願い致します。 (ばんばん)
何度もすみません。 初めに提示した式なのですが、有休を取得した場合と代休を取得した場合を IF(I7="有"…で分けて計算していました。 ご提示頂いた式を最初に提示した式に入れたいのですが、どこに入れればいいでしょうか? お手数をお掛けしますが、よろしくお願い致します。 (ばんばん)
よく分かりませんが
[G] [H] [I] [J] [K] [L] [M] [N] [4] 日付 休暇 休暇 申請 理由 残日数 支給日数 繰越日数 [5] 時間 種別 休出日 16.5 12.0 4.5 [6] 4/11 1.0 有 ○ 15.5 12.0 3.5 [7] 4/12 1.0 有 ○ 14.5 12.0 2.5 [8] 4/13 1.0 有 ○ 13.5 12.0 1.5 [9] 4/14 1.0 有 ○ 12.5 12.0 0.5 [10] 6/18 1.0 有 ○ 11.5 11.5 0.0
L5=M5+N5 M5=C9 N5=C10 ★作業セルなので文字色を白にして下さい。
L6=IF(H6="","",IF(J6="○",IF(I6="有",IF(N6>=0,M6+N6,M6),L5),"")) M6=IF(H6="","",IF(J6="○",IF(I6="有",IF(N6>0,M5,$M$5+($N$5-SUM($H$6:H6))),M5),"")) N6=IF(H6="","",IF(J6="○",IF(I6="有",IF(N5-H6<0,0,N5-H6),N5),"")) として下にコピー でどうでしょう? ※式訂正しました。(7/11 22:45)
所で、無届けで休んだ場合有給残は取り上げですか? ・・・事後でも出してもらえばよくて、その催促の為に 空欄表示にしてあるんですかね。
(HANA)
>IF(I7="有"…で分けて計算していました で、最終的に計算するところはどこなんですかね? (代休だと引き算しないんですよね?) そこに(純丸)さんの式を入れればいいかと思いますが。
新しい条件がでて、その時にどうしたいのかを書いてもらわないと どこに入れればいいのかは・・・・わからないと思いませんか?
どの条件の時に何をするのか、式を作る前に一度表にしてみると わかりやすいかもしれませんね。
(HANA)
HANAさん、ありがとうございます。 ご理解に苦しむ内容ですみませんでした。 (言い訳ですが)ちょっと、バタバタしていたもので…。 今日は時間があるので少し自分なりに整理して考えてみます。 また分からなくなったら、質問させてください。 よろしくお願い致します。 (ばんばん)
追加質問の回答を失念しておりました。申し訳ありません。 HANAさん、フォローをありがとうございましまた。 (純丸)(o^-')b
[ 一覧(最新更新順) ]
YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki.
Modified by kazu.