[[20210210090829]] 『時間単位年休の繰り越し分からの残数消化の関数に』(SHO) ページの最後に飛ぶ

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

 

『時間単位年休の繰り越し分からの残数消化の関数について』(SHO)

現在時間単位年休導入のためエクセルで表を作成しています。

前年から先に消化させたいですが、
例えば前年の残数が4日と6時間、当年度付与が14日あったとして、5日使ったとき、日単位で取得しているので、4日分は前年からの消化、残りの1日分は当年度分からの消化にしたいのですが、
現在つくっている表では取得日数と取得時間を時間単位で合算し、前年と当年分に反映させているので、
残りの1日分=8時間が前年分の6時間から先にマイナスし、残りの2時間を当年分から引くので、前年残が0日、当年残が13日と6時間という表記になってしまいます。
この条件で、5日使った際は、前年残日数0日6時間 当年残数13日0時間、
また同条件で5日7時間使った際は、前年度残日数0日0時間 当年残数12日1時間
とこうなるようにどなたか助けていただけませんでしょうか、、、

がんばってつくったのですが、これ以上お手上げなので、ここのページで助けを求めに参りました、、、


月 | 1ヶ月取得時間数|1ヶ月取得日数|累積時間(最大40時間・5日まで)|残日数(前年より先消化) 前年  当年|今月取得総時間数|前年度繰越残り|今年度の支給の有給時間の残り
1月|0時間|3日|0時間→0日0時間|1日 6時間|14日0時間|24|14|112
2月|0時間|2日|0時間→0日0時間|0日 0時間|13日6時間|16|0|110

前年残日数の関数=ROUNDDOWN(W7/$J$2,0)
前年残時間数の関数=MOD(W7,$J$2)/24

当年残日数の関数=ROUNDDOWN(X7/$J$2,0)
当年残時間数の関数=MOD(X7,$J$2)/24

今月取得総時間数=F7*$J$2+D7
前年度繰越残り=$Q$2-MIN($Q$2,V7)
今年度支給時間の残り=IF(W7>0,$R$2,$R$2-((V7)-($Q$2-SUM(V2:V6)))) ここのSUMは今月取得総時間数を足していっています。

補足
W7=前年度繰越残り欄
J2=8 (1日8時間で計算するためのただの8)
X7=今年度支給時間の残り欄
F7=1か月取得日数欄
D7=1か月取得時間数欄
Q2=前年繰り越し付与総時間数(4日6時間=38時間)
V7=今月取得総時間数
R2=今年度付与総時間数(14日=112時間)

< 使用 Excel:Excel2019、使用 OS:Windows10 >


 そちらの表がどうなっているか読み解くだけで、日が暮れそうです。

 当該範囲をコピーして、この掲示板に貼り付けて頂けませんか? (7行分)

 ※表の体裁が崩れてもいいので、手を加えないでください。
  但し、差し障りのある情報は仮データに換えてください。

(半平太) 2021/02/10(水) 16:15


																前年繰り越し	今年度使用可能						
年次有給休暇管理表									8							38	112						
社員番号					氏名										前年繰越日数		4	日	6	  時間			
入社年月日		年  月  日			初回付与年月日	年   月   日									今年度付与日数				14	日			
番号	月		1ヶ月取得時間数		1ヶ月取得日数		累積時間(最大40時間・5日まで)						残日数(前年より先消化)										
													前年				当年				今月取得総時間数	前年度繰越残り	今年度の支給の有給時間の残り
1	1	月	0	時間	3	日	0	時間→	0	日	0時間		1	日 	6時間		14	日	0:00:00	時間	24	14	112
2	2	月	0	時間	2	日	0	時間→	0	日	0時間		0	日 	0時間		13	日	6:00:00	時間	16	0	110
3	3	月	0	時間		日	0	時間→	0	日	0時間		0	日 	0時間		13	日	6:00:00	時間	0	0	110
4	4	月	0	時間		日	0	時間→	0	日	0時間		0	日 	0時間		13	日	6:00:00	時間	0	0	110

(SHO) 2021/02/10(水) 16:47


																前年繰り越し	今年度使用可能							
年次有給休暇管理表									8							=R3*8+T3	=T4*8							
社員番号					氏名										前年繰越日数		4	日	6	  時間				
入社年月日		年  月  日			初回付与年月日	年   月   日									今年度付与日数				14	日				
番号	月		1ヶ月取得時間数		1ヶ月取得日数		累積時間(最大40時間・5日まで)						残日数(前年より先消化)											
													前年				当年				今月取得総時間数	前年度繰越残り	今年度の支給の有給時間の残り	
1	1	月	0	時間	3	日	=D7	時間→	=ROUNDDOWN(H7/$J$2,0)	日	=MOD(D7,$J$2)/24		=ROUNDDOWN(W7/$J$2,0)	日 	=MOD(W7,$J$2)/24		=ROUNDDOWN(X7/$J$2,0)	日	=MOD(X7,$J$2)/24	時間	=F7*$J$2+D7	=$Q$2-MIN($Q$2,V7)	=IF(W7>0,$R$2,$R$2-((V7)-($Q$2-SUM(V2:V6))))	
2	2	月	0	時間	2	日	=D8+H7	時間→	=ROUNDDOWN(H8/$J$2,0)	日	=MOD(H8,$J$2)/24		=ROUNDDOWN(W8/$J$2,0)	日 	=MOD(W8,$J$2)/24		=ROUNDDOWN(X8/$J$2,0)	日	=MOD(X8,$J$2)/24	時間	=F8*$J$2+D8	=$Q$2-MIN($Q$2,V8+V7)	=IF(W8>0,$T$2,$R$2-((V8)-($Q$2-SUM(V7))))	=SUM(W8:X8)
3	3	月	0	時間		日	=D9+H8	時間→	=ROUNDDOWN(H9/$J$2,0)	日	=MOD(H9,$J$2)/24		=ROUNDDOWN(W9/$J$2,0)	日 	=MOD(W9,$J$2)/24		=ROUNDDOWN(X9/$J$2,0)	日	=MOD(X9,$J$2)/24	時間	=F9*$J$2+D9	=$Q$2-MIN($Q$2,V9+V8+V7)	=IF(W9>0,$T$2,$R$2-((V9)-($Q$2-SUM(V7:V8))))	
4	4	月	0	時間		日	=D10+H9	時間→	=ROUNDDOWN(H10/$J$2,0)	日	=MOD(H10,$J$2)/24		=ROUNDDOWN(W10/$J$2,0)	日 	=MOD(W10,$J$2)/24		=ROUNDDOWN(X10/$J$2,0)	日	=MOD(X10,$J$2)/24	時間	=F10*$J$2+D10	=IF(D10<=1,$Q$2-MIN($Q$2,V10+V9+V8+V7),"")	=IF(W10>0,$T$2,$R$2-((V10)-($Q$2-SUM(V7:V9))))	

(SHO) 2021/02/10(水) 16:47


半平太様
お返事ありがとうございます。
このような感じでお分かりいただけますでしょうか、、、

また、=IF(W9>0,$T$2,$R$2-((V9)-($Q$2-SUM(V7:V8))))と=IF(D10<=1,$Q$2-MIN($Q$2,V10+V9+V8+V7),"")
につきましては、試しでいれてみているだけなので無視してください。

何卒よろしくお願いいたします。土下座
(SHO) 2021/02/10(水) 16:50


 時間のセルが、ただの数値だったり、時刻シリアル値だったりしていますが、
 以下の数式は、全て単なる数値データでの数式です。

 (1) N7セル =MAX(0,R$3-SUM(F$7:F7))
 (2) P7セル =MAX(0,T$3-SUM(D$7:D7))
 (3) R7セル =INT(X7/8)
 (4) T7セル =X7-R7*8
 (5) V7セル =F7*$J$2+D7
 (6) W7セル =N7*$J$2+P7
 (7) X7セル =SUM(Q$2:R$2)-SUM(V$7:V7)-W7

 下にコピー

 <結果図>
 行  _______D_______  __E__  _______F_______  :   ___N___  __O__  _______P_______  ______Q______  _______R_______  _S_  __T__  ____U____  __V__  ___W___  _____X_____
  1                                           :                                    前年繰り越し   今年度使用可能                                                     
  2                                           :                                               38              112                                                    
  3                          氏名             :                   前年繰越日数                                  4  日       6    時間                              
  4                          初回付与年月日   :                   今年度付与日数                                           14  日                                    
  5  1ヶ月取得時間数         1ヶ月取得日数    :   残日数                                                                                                             
  6                                           :   前年            前年                            当年                  当年              今月   前年度   今年支給残 
  7                0  時間                 3  :         1  日                  6  時間                        14  日       0  時間         24       14          112
  8                0  時間                 2  :         0  日                  6                              13  日       0  時間         16        6          104
  9                5  時間                    :         0  日                  1                              13  日       0  時間          5        1          104
 10                2  時間                    :         0  日                  0                              12  日       7  時間          2        0          103

(半平太) 2021/02/10(水) 22:34


半平太様
考えてくださって本当にありがとうございます。
大変感謝しております。

さっそく試してみましたが、前年の残日数時間が0になった場合どうやらそれ以上、前年の残日数から減らすことができないようです。
例えば、前年繰り越し日数が12日4時間今年度付与が16日としたとき、
1か月の取得数6時間、1か月取得日数1日と使用したとすると、残日数(前年は10日6時間)(当年は16日)
となるはずですが、結果は残日数(前年は11日0時間)(当年は15日6時間)となりました。

もしよろしければまたお力添えいただけたら幸いです。
よろしくお願いいたします。
(SHO) 2021/02/12(金) 09:43


 前年残は、日は日のみ、時間は時間のみしか充当できないルールかと解釈したのですが、
 日数から時間数へ取り崩すこともできたんですね。。

 でしたら、これですかね。

 (1) N7セル =INT(MAX(0,R$3*8+T$3-SUM(F$7:F7)*8-SUM(D$7:D7))/8)
 (2) P7セル =MOD(MAX(0,8+R$3*8+T$3-SUM(F$7:F7)*8-SUM(D$7:D7)),8)

(半平太) 2021/02/12(金) 14:16


コメント返信:

[ 一覧(最新更新順) ]


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