本章主要展示有关日期时间的代码参考,比如获得当前日期和时间、取出日期时间的各个部分、用部分拼出日期时间、相距某个时段的日期时间、两个日期时间的间隔、星期几、周月季的第一天和最后一天、某月某季某年的天数、产生周期间隔的日期时间序列、某月(季、年)的第二个和最后一个星期五共有几个星期五、判断是否是日期、计算年龄、工作日相关计算等。
|
A |
|
1 |
=now() |
|
2 |
=now@d() |
返回为日期类型 |
3 |
=now@m() |
精确到分 |
|
A |
|
1 |
=now() |
|
2 |
=year(A1) |
|
3 |
=month(A1) |
|
4 |
=day(A1) |
|
5 |
=time(A1) |
|
6 |
=hour(A1) |
|
7 |
=minute(A1) |
|
8 |
=second(A1) |
|
|
A |
B |
C |
D |
E |
F |
|
1 |
1989 |
'02 |
'01 |
'02 |
34 |
55 |
|
2 |
=string(A1)+"-"+string(B1)+"-"+string(C1)+" "+string(D1)+":"+string(E1)+":"+string(F1) |
|
|
|
|
|
|
3 |
=datetime(A2) |
|
|
|
|
|
|
4 |
=datetime(A2,"yyyy-MM-dd HH:mm:ss") |
|
|
|
|
|
|
5 |
=date(A1,int(B1),int(C1)) |
|
|
|
|
|
|
6 |
=time(int(D1),E1,F1) |
|
|
|
|
|
|
7 |
=datetime(A1,int(B1),int(C1),int(D1),E1,F1) |
|
|
|
|
|
|
8 |
=datetime(A5,A6) |
|
|
|
|
|
|
|
A |
|
1 |
2006-07-05 |
|
2 |
=elapse(A1,5) |
5 天后 |
3 |
=elapse("1972-11-08 10:20:30",-10) |
10 天前 |
4 |
=elapse@s(datetime(A1),5) |
5 秒后 |
5 |
=elapse@s("1972-11-08 10:20:30",-10) |
10 秒前 |
6 |
=elapse@m(A1,-1) |
1 月前 |
7 |
=elapse@y(A1,-1) |
1 年前 |
|
A |
B |
|
1 |
2010-5-01 23:20:15 |
2010-05-03 01:01:01 |
|
2 |
=interval(A1,B1) |
|
相差天数 |
3 |
=interval@s(A1,B1) |
|
相差秒数 |
4 |
=interval@y(A1,"2001-01-01") |
|
相差年数 |
5 |
=interval@m(A1,"2001-01-01") |
|
相差月数 |
6 |
=interval@ms(A1,now()) |
|
相差毫秒数 |
7 |
=interval(A1,B1) |
|
相差天数 |
8 |
=interval@s(A1,B1) |
|
相差秒数 |
|
A |
|
1 |
2005-01-08 |
|
2 |
=day@w(A1) |
星期内的第几天,周日为1 |
|
A |
|
1 |
2006-03-06 |
|
2 |
=pdate@w(A1) |
周第一天 |
3 |
=pdate@we(A1) |
周最后一天 |
4 |
=pdate@q(A1) |
季第一天 |
5 |
=pdate@qe(A1) |
季最后一天 |
6 |
=pdate@m(A1) |
月第一天 |
7 |
=pdate@me(A1) |
月最后一天 |
|
A |
|
1 |
2007-08-08 |
|
2 |
=days(A1) |
A1所在月天数 |
3 |
=days@y(2006) |
2006年的天数 |
4 |
=days@y(A1) |
A1所在年天数 |
5 |
=days@q(A1) |
A1所在季天数 |
|
A |
|
1 |
2000-08-10 12:00:00 |
|
2 |
=periods@y(A1,now(),1) |
以 1年为间隔单位 |
3 |
=periods@q(A1,now(),1) |
以 1季为间隔单位 |
4 |
=periods@m(A1,now(),2) |
以 2月为间隔单位 |
|
A |
|
1 |
=now() |
|
2 |
=pdate@m(A1) |
月初 |
3 |
=pdate@me(A1) |
月末 |
4 |
=periods(A2, A3,1) |
月中日的序列 |
5 |
=A4.select(day@w(~)==6) |
其中的星期五列 |
6 |
|
另一方法 |
7 |
=elapse(A2,(d=day@w(A2),if(d==7,6,6-d))) |
第一个星期五 |
8 |
=periods@x(A7,A3,7) |
获得星期五序列,不包括A3的日期 |
9 |
=A8(2) |
第二个星期五 |
10 |
=A8.m(-1) |
最后一个星期五 |
11 |
=A8.len() |
星期五的数量 |
|
A |
|
1 |
=ifdate("2020-04-24") |
false |
2 |
=ifdate(date("2020-04-24")) |
true |
|
A |
|
1 |
1995-3-31 |
|
2 |
=now@d() |
2020-03-30 |
3 |
=age(A1) |
24,精度是天 |
4 |
=age@m(A1) |
25,精度是月 |
5 |
=age@y(A1) |
25,精度是年 |
|
A |
|
1 |
2020-4-24 |
|
2 |
2020-5-10 |
|
3 |
[2020-4-26,2020-5-1,2020-5-4,2020-5-5,2020-5-9] |
法定节日调整的日期序列 |
4 |
=workday(A1,1) |
2020-04-27,A1相差1个非周末 |
5 |
=workday(A1,1,A3) |
2020-04-26,A1相差一个工作日 |
6 |
=workdays(A1,A2) |
A1和A2之间的非周末序列 |
7 |
=workdays(A1,A2,A3) |
A1和A2之间的工作日序列 |