用excel产生随机日期(年月日),怎样用公式?

用excel产生随机日期(年月日),怎样用公式?
用随机函数产生1996-1-1到1997-12-31这两个日期之间的随机数(包括年月日都是变动的),并且单元格中的年月日的格式也是上面的那样,该使用怎样的公式.请高手编一个公式,我急用.
我财富值不多,全付出了
一楼的答案我试了一下,真的可行.
但括号中的前一部分的那些数是怎样确定的,能否解释一下,因为我还要套其他年份的.
本人菜鸟,别见笑

="1996-1-1"+RAND()*("1997-12-31"-"1996-1-1")
=TEXT(INT(RAND()*730)+35065,"yyyy-mm-dd")

这些公式在EXCEL中你是可以看到他们是什么意思的

我想解释一下EXCEL对日期的规则
EXCEL它认为数字"1"就是"1900年1月1日"
EXCEL它认为数字"2"就是"1900年1月2日"
EXCEL它认为数字"3"就是"1900年1月3日"
.
根据上面的规则从1900.1.1到2010.2.14所有的日子加起来一共是"40223"天
也就是说,你把EXCEL的单元格式设置为日期,然后在里面输入"40223"
它就会给你显示"2010年2月14日"

以上
温馨提示:答案为网友推荐,仅供参考
第1个回答  2010-01-27
楼上的公式不错。来个直观一点的:
="1996-1-1"+RAND()*("1997-12-31"-"1996-1-1")

已经见笑了,呵呵。
730是两年的天数,35065即1996-1-1(从1900-1-1到1996-1-1的天数)。
第2个回答  2010-01-27
=TEXT(INT(RAND()*730)+35065,"yyyy-mm-dd")
730是1997-12-31到1996-1-1的时间区间宽度(天),35065即1996-1-1的EXCEL里的数值显示结果.
假设A1单元格存储下区间日期,B1单元格存储上区间日期.公式可变更如下:
=TEXT(INT(RAND()*(B1-A1))+A1,"YYYY-MM-DD")
第3个回答  2010-01-27
一楼正确,二楼的构思巧妙,但是弄巧成拙,结果正确,格式不对
也许是实验了="2010-2-14"显示是正确的,
但是="2010-2-14"+"2010-2-14"就显示的数字了
估计只要出现运算符号,Excel就会按照整型数据处理吧

想套用2010-1-1,就在单元格里输入2010-1-1,将单元格格式设为数值就变成40179了
相似回答