2017-02-15 104 views
0

我需要一个复杂的多评估函数来计算假期日期。它在工作簿中不能启用宏,因此必须采用公式形式。我需要做如下的评估:假期日公式

多久了员工一直在努力:在一年= 0小时,1 - 3年= 40个小时,3年以上80小时

然后在一个周薪图表基于今天的日期与当前星期日期显示比较 列1 - 员工工作多少小时累计 2列 - 有多少采取这个星期 列3 - 多小时了,怎么保持

而且踢球的是,当我打开excel我不希望它reevalutes任何前几周的数字。

这是我现在的代码。 J3是雇佣日期,A9周开始,C9周末,E8开始度假余额。 I8使用小时,M8是最终余额。

=IF(TODAY()<C9,E9,IF(AND(DATE(,MONTH($A9),DAY($A9))<=DATE(,MONTH($J$3),DAY($J$3)),DATE(,MONTH($C9),DAY($C9))>=DATE(,MONTH($J$3),DAY($J$3))),IF(TODAY()>DATE(YEAR($J$3)+3,MONTH($J$3),DAY($J$3)),80,IF(TODAY()>DATE(YEAR($J$3)+1,MONTH($J$3),DAY($J$3)),40,0)),E8)) 

是否有可能做的一切我需要在不

+0

显示记录和输出的视觉示例。另外解释你的'踢球'更多。 – MacroMarc

+0

回答你的问题:是的,这是可能的。如果您需要帮助,我建议提供您的数据输入示例,期望的输出以及您的公式化方法的问题。帮助主题[如何创建最小,完整和可验证示例](http://stackoverflow.com/help/mcve)可能会有用。 –

+0

有没有方法来附加工作簿或它必须是外部链接?踢球者是:大多数公式使用Today()函数,因此每次打开工作簿时都会重新计算数据。我需要的是它不会抹去以前的权责发生制和平衡,并超过他们的权利,但只能在本周进行。 – Hareborn

回答

0

我看不出有任何理由,你需要的TODAY函数来计算计休假时间启用宏。如果我理解正确的话,在1年的

  • 结束:预提= 0小时,今年2
  • 结束:预提= 40个小时,今年3
  • 结束:预提= 80个小时
  • 年4的端:预提= 160个小时年5的
  • 端:预提= 240小时

我的建议:

设置如下表格; NAME如果Vacation_Table注意如果你有在B5公式更改列1个破发点,或任何其它参数:(我把这个另一个工作表,但你可以把它放在任何地方

enter image description here

。然后,(如果要计入周末的时间变化A9至C9)使用这个公式来计算从hire date计入start of the week date休假小时。

=VLOOKUP(DATEDIF($J$3,A9,"y"),Vacation_Table,2)+ (DATEDIF($J$3,A9,"y")-VLOOKUP(DATEDIF($J$3,A9,"y"),Vacation_Table,1))*VLOOKUP(DATEDIF($J$3,A9,"y"),Vacation_Table,3) 

当然,要获得当前余额,你会的编辑从这个减去使用的假期时间,但这应该给你一个非易失性公式的开始。

+0

我试图使用Today()功能,我没有看到周围的工作,感谢指引我在不同的方向。 – Hareborn