假设我们要将1789/12/3、1899/12/31、1900/12/31、1500/2/4这几个年份设置为yyyy-mm-dd格式,想必大家都会操作:选中单元格,鼠标右键–>点击“设置单元格格式”–>选择日期,点击其中类型。
随后我们输入这几个日期,你会发现是这样的:
如果你进行排序操作,那么你会发现只有一个信息是有效数据,那就是1900/12/31,而其他的数据都是不参与排序的。
如果你把它们设置为数值格式,那么只有1900/12/31这个年份变成了数字366。大家可试一试!
遵循文本靠左,数据靠右。我们可以知道除1900/12/31之外的年份虽然设置了格式,但他们仍然是文本,不是数值,所以将它们转化成数据只会有1900/12/31这一个数据成功转化。那么既然是文本,必然是不参与排序的。而1900/12/31是根据什么来排序的?就是这个数值366。
多试几次你会发现,1900/1/1之前的年份都是无法转化成数值的。至于原因,可能是在设计软件的时候出于某方面考虑吧,具体的我不明。所以这种情况对我们而言是一种BUG。
除此之外你会发现还有另一个BUG:1900年不能被400整除,所以是平年不是闰年,平年的2月份有28天,这是我们公认的。
但是在EXCEL上输入1900/2/25,随后用表格右下角的小十字下拉,你会发现:
找亮点!
这些BUG,我们不需要去解决,但是需要知道!
最后提问:日期是根据什么来排序的?