excel 用date计算工龄工资,但每个月输入一次日期工作量太大,高手指点一下!

来源:百度知道 编辑:UC知道 时间:2024/05/27 18:25:17
例如:=IF(DATEDIF(G8,date(2009,5,31),"y")<5,DATEDIF(G8,date(2009,5,31),"y")*20,DATEDIF(G8,date(2009,5,31),"y")*30)这是5月份的工龄,到6月份时,要把date(2009,5,31)改成date(2009,6,30)每一个人改一下,工作量太大,有没有什么办法让计算机自己生成?谢谢!!
例:如果用TODAY() 或 now() 当月求出5月份工龄工资的值,但到6月时,会随同系统时间发生改变而改变,打开5月份工龄工资文件数值就会改变,我想要5月份做的文件,无论在那个月打开都显示一样的!!谢谢!!请高手指点一下! 用查找替换我也想过,但容易出错!还须要再想想!!

将式中date(2009,5,31)改成 date(year(now()),month(now())+1,0)

PS:
呵呵 ,那就用查找替换的方法最简单了
比如复制出来一个6月份新表,里面还是五月份公式,那么用CTRL+F调出来查找替换,查找输入: date(2009,5,31) 替换输入 date(2009,6,30),点击全部替换就行了

2:
直接把DATE(2009,5,31)改成DATE(A1,B1,C1)就行了

A1 B1 C1分别输入 2009 5 31 ,到六月就变成 2009 6 30 只改两个单元格就行,看你需要

将式中date(2009,5,31)改成EOMONTH(TODAY(),0)

编辑->查找->替换.
这样比较快.

最简单的办法是将#2009-5-31#的值存在一个固定的单元格中,比如$A$10
在公式中直接引用$A$10即可

为什么不用TODAY()