在excel中下拉公式,空白格也会出现数值,怎么去除?

年假数值的公式是工龄大于等于1时有年假20天,否则无。但是快捷下拉公式的时候,有些缺乏数据的没显示工龄的为什么年假还能显示呢?应该如果设置去除,然后方便快捷下拉?03版excel麻烦详细点,谢谢!
补充图片,考虑不周哈

输入以下公式,然后向下填充公式

=IF(D3="","",IF(DATEDIF(D3,TODAY(),"y")>=1,"20天年假","无"))

公式表示:如果D3为空,返回空;如果D3不为空,且计算与今天的年数为1以上,就返回“20天年假”,否则返回无。

 在计算工龄等日期计算中,空格相当于比日期序列1对应的“1900-1-1”少1天,因此会使得空格产生115年工龄的计算结果,需要在公式设计中,通过IF函数,将日期为空的,结果显示为空。

 

温馨提示:答案为网友推荐,仅供参考
第1个回答  2014-08-21
你的公式中,有个“无”字。把公式中的这个无字去掉,再下拉,就行了。追问

结果成这样了,还是没有吧空白工龄对应的年假去掉咧?

追答

你把公式中的""号留着啊。。。

第2个回答  2014-08-21
首先 到目前为止 也没有看到 你用了什么公式!即使你与其他朋友交流也是 没有透露 你的公式具体是什么……
还有 你的 工龄 列 的数据 是什么格式的?你图片上 显示的 是怎么设置的 输入的 还是 设置格式 这样显示的? 这些都需要交代一下……否则 真的不敢想象 你能得到答案!并且给你的答案还是正确的……

补充一下吧!

如果 你的 工龄数据是文本 输入的 的话公式如下:假设工龄在C列
D2 =IF(--LEFT(C2,FIND("年",C2)-1)>=1,"年假20天","") 如果是数值通过格式设置这样显示的话 可以把left去掉

D2 =IF(C2>=1,"年假20天","")

看了补充:
F3 =IF(D3="","",IF(--DATEDIF(D3,TODAY(),"Y")>=1,"年假20天","无"))
第3个回答  2014-08-21
=if(A1<>"",你的公式,"")
第4个回答  2014-08-21
显然是公式没有设置好,请在追问中把公式贴上来看一下。带上行列标截图。追问

请指教!

追答

亲,空白单元格的日期值是“1900-1-1”,它和TODAY()的间隔年是一百多年,当然大于1了!

所以要排除这种情况,加一层IF判断,如果D3为空白则显示空白,否则显示你的公式值:

=IF(D3="","",IF(DATEDIF(D3,TODAY(),"Y")>=1,"年假20天","无"))

 

本回答被提问者采纳
相似回答