数字到Excel的date转换(奇怪的格式)

我已经收集了一些来自sql的细节,并显示如下的生日(每一行代表不同的出生date):

-294022800 649119600 -138675600 49158000 32396400 631152000 -2147483648 731894400 -408067200 522025200 

我试图用这个公式来改变他们在Excel中:

 =DATE(INT(A1/10000),INT((A1-10000*INT(A1/10000))/100),A1-(100*INT(A1/100))) 

但是它不是很好,它必须采用不同的格式。 你知道什么样的格式,以及如何将其转换为Excel中的date? 为什么有些数字是消极的? 这可以是EPOCH格式吗? 如何在Excel中将其更改为正常的人类date?

Unix时间戳可以用这个公式转换

=A1/86400+DATE(1970,1,1)

Unix时间戳是自1970年1月1日以来的秒数,因此在此之前的生日将是负面的。 [其中一个出生date翻译成1901年 – 是吗? 如果任何date在1900年之前,您将遇到问题,因为Excel无法识别这些date]

我的猜测是他们是unix时间戳http://en.wikipedia.org/wiki/Unix_time

在Excel中,你可以使用像这样的东西:

 =(((A1/60)/60)/24)+DATE(1970,1,1) 

虽然,你将不得不小心,你的date似乎包括夏时制抵消。 (有些是一天的倍数(24 * 60 * 60),但其他的则是一个小时)。 我不知道为什么你有一个非小时倍数(-2147483648),可能是原始系统的一些怪癖。

资料来源: http : //spreadsheetpage.com/index.php/tip/converting_unix_timestamps/

好的,我明白了。 这是公式:

 =(A1-(4*3600))/86400+25569