Excel改进date差异函数
我在Excel中定义了以下公式
=DATEDIF(B595;TODAY();"y") & " years, " & DATEDIF(B595;TODAY();"ym") & " months, " & DATEDIF(B595;TODAY();"md") & " days"
但是它显示出如下结果:
0 years, 0 months, 20 days
我宁愿看到:
20 days
我可以使用VBA函数来获得更好的结果吗? 还是一个公式?
只要将If语句添加到将在DateDif计算为零时删除组件的公式中:
=IF(DATEDIF(B595;TODAY();"y")=0;"";DATEDIF(B595;TODAY();"y") & " years, ") & _ IF(DATEDIF(B595;TODAY();"ym")=0;"";DATEDIF(B595;TODAY();"ym") & " months, ") & _ IF(DATEDIF(B595;TODAY();"md")=0;"";DATEDIF(B595;TODAY();"md") & " days, ")
我把公式分成三行,所以在这里可读,但应该作为一行input