求Excel两个不固定日期之间相差天数的公式,可以显示负数的

如题,M8是计划完成日期,N8是实际完成日期,O8是显示M8和N8之间相差的天数。如果实际完成日期N8迟于计划完成日期M8,则显示负数;如果实际完成日期N8提前于计划完成日期M8的日期,则显示正数。
比如:M8为9月5日,N8为9月6日,则O8显示-1;
M8为9月5日,N8为9月3日,则O8显示2;
以前得到这个公式 =IF(M8>=N8,M8-N8,"-"&N8-M8)*1
这个公式如果同时填入M8和N8两个日期的话,O8能正常显示相差天数,且也能显示负数,但是如果只填入其中一个日期的话,O8只能显示一组5位数字,不知何故。

还是请教高手,求O8的输入公式,请高手帮助,不胜感激!

第1个回答  2014-09-14
=(m8-n8)*1

另,如果只填入其中一个日期的话,O8只能显示一组5位数字,因为日期也有相应的数字值。你把单元格格式改成常规就能看到

如果只填入其中一个日期的话,那另一个单元格默认为0,即1900/1/0,故显示的是,你填入日期和1900/1/0的日期差追问

O8单元格我是设置成常规格式的,但还是显示5位数字。

追答

常规格式就是5位数字啊,你改成日期格式,就变成日期了

追问

嗯,谢谢,不过我要的不是日期,要的是相差天数。而且,只填入一个日期不应该有相差天数显示,这5位数字更不算了。

追答

确实是相差天数,因为不填写,单元格默认为0,即OFFICE默认为:日期:1900/1/0

第2个回答  2014-09-14

单元格格式改为日期试试

第3个回答  2014-09-14
点击O8单元格,在右键菜单中依次点击“设置单元格格式/数字/常规/确定”。追问

谢谢,试过了,没有效果,这个问题可能比较难

追答

在O8中输入公式

=IF(COUNT(M8:N8)<2,"",ABS(M8-N8))

下拉填充。

追问

谢谢!试过了,但是不能显示负数,因为其中实际完成日期N8可能提前或迟于计划日期M8,会产生负数。我想要能显示负数和正数的公式,不知能不能实现。
比如:M8为9月5日,N8为9月6日,N8迟于M8一天,则O8显示-1;为负数。
M8为9月5日,N8为9月3日,N8提前M8二天,则O8显示2;为正数。
请帮忙看一下原文中提供的公式出了什么问题。

追答

原来负数也要!还简单些:
在O8中输入公式
=IF(COUNT(M8:N8)<2,"",M8-N8)
下拉填充。

本回答被提问者采纳
第4个回答  2014-09-14
=DATEDIF(M8,N8,"d")
相似回答