日期函数
用于处理日期和时间的函数。
日期对象
将时间戳或年月日或年月日时分秒转换为日期对象。
用法
HZ_DATE(timestamp)只提供1个参数,参数为时间戳HZ_DATE(year, month, day)提供3个参数,参数分别是 年、月、日HZ_DATE(year, month, day, hour, minute, second)提供6个参数,参数分别是 年、月、日、时、分、秒
用法(1)
timestamp时间戳
用法(2)
year年份month月份day天数
用法(3)
year年份month月份day天数hour小时minute分钟
second秒钟
返回值:
date示例
HZ_DATE(2015, 11, 1)HZ_DATE(1448899200000)HZ_DATE(2015, 11, 1, 0, 0, 0)这三个都表示
Sun Nov 01 2015 00:00:00 GMT+0800 (中国标准时间)。
获取时间戳
将日期对象转换成时间戳。
用法
HZ_TIMESTAMP(date)
参数
date日期对象
返回值:
number示例
HZ_TIMESTAMP(HZ_NOW())
时间
返回特定时间的十进制数字。时间值为日期值的一部分,并用十进制数表示(例如
12:00 PM可表示为0.5,因为此时是一天的一半)。
用法
HZ_TIME(hour, minute, second)
参数
hour必需。0(零)到32767之间的数字,代表小时。任何大于23的值都会除以24,余数将作为小时值。minute必需。0到32767之间的数字,代表分钟。任何大于59的值将转换为小时和分钟。second必需。0到32767之间的数字,代表秒。任何大于59的值将转换为小时、分钟和秒。
返回值:
number示例
HZ_TIME(27, 0, 0) == HZ_TIME(3, 0, 0) == 0.125HZ_TIME(0, 750, 0) == HZ_TIME(12, 30, 0) == 0.520833HZ_TIME(0, 0, 2000) == HZ_TIME(0, 33, 20) == 0.023148
返回今天
返回今天。精确到天。
用法
HZ_TODAY()返回值:
date示例
HZ_TIMESTAMP(HZ_TODAY())
当前时间
返回当前时间。精确到毫秒。
用法
HZ_NOW()返回值:
date示例
HZ_TIMESTAMP(HZ_NOW())
服务器时间
返回当前服务器时间。即使客户端的时间被人为调整了,HZ_SYSTIME函数也不受影响,获取的仍然是服务器时间。例如签到、打卡等场景下,可避免调整时间作弊的情况。
用法
HZ_SYSTIME()返回值:
date示例
服务器时间 == HZ_SYSTIME()
年份
返回某日期的年份。
用法
HZ_YEAR(timestamp)
参数
timestamp时间戳
返回值:
number示例
HZ_YEAR(日期时间)
月份
返回某日期的月份。月份是介于 1 到 12 之间的整数。
用法
HZ_MONTH(timestamp)参数
timestamp时间戳
返回值:
number示例
HZ_MONTH(日期时间)
天
返回某日期的天数。天数是介于 1 到 31 之间的整数。
用法
HZ_DAY(timestamp)参数
timestamp时间戳
返回值:
number示例
HZ_DAY(日期时间)
小时
返回某日期的小时数。
用法
HZ_HOUR(timestamp)参数
timestamp时间戳
返回值:
number示例
HZ_HOUR(日期时间)
分钟
返回某日期的分钟数。
用法
HZ_MINUTE(timestamp)参数
timestamp时间戳
返回值:
number示例
HZ_MINUTE(日期时间)
秒钟
返回某日期的秒数。
用法
HZ_SECOND(timestamp)参数
timestamp时间戳
返回值:
number示例
HZ_SECOND(日期时间)
相隔天数
返回两个日期之间的天数。
用法
HZ_DAYS(end_timestamp, start_timestamp)参数
end_timestamp结束日期。start_timestamp起始日期。
返回值:
number示例
HZ_DAYS(结束时间, 开始时间)返回值的天数为正整数。
日期相差天数
按照一年 360 天的算法(每个月以 30 天计,一年共计 12 个月),
HZ_DAYS360函数返回两个日期间相差的天数,这在一些会计计算中将会用到。 如果财会系统是基于一年 12 个月,每月 30 天,可使用此函数帮助计算支付款项。
用法
HZ_DAYS360(end_timestamp, start_timestamp, method)参数
end_timestamp结束日期。start_timestamp起始日期。method用于指定在计算中是采用美国方法还是欧洲方法。不填或false表示是美国方法,true表示是欧洲方法。
返回值:
number备注
- 美国方法(NASD): 如果起始日期是一个月的最后一天, 则等于同月的30号. 如果终止日期是一个月的最后一天, 并且起始日期早于30号, 则终止日期等于下一个月的1号, 否则, 终止日期等于本月的30号
- 欧洲方法: 如果起始日期和终止日期为某月的31号, 则等于当月的30号
日期操作
将指定日期加/减指定天数。
用法
HZ_DATEDELTA(timestamp, deltadays)参数
timestamp初始日期。deltadays需要加减的天数。正数为增加,负数为减少。
返回值:
date示例
HZ_DATEDELTA(日期时间, 5)
周数
返回特定日期的周数。例如,包含1月1日的周为该年的第1周,其编号为第1周。
用法
HZ_WEEKNUM(timestamp, return_type)参数
timestamp指定日期。代表一周中的日期。应使用HZ_DATE函数输入日期,或者将日期作为其他公式或函数的结果输入return_type一数字,确定星期从哪一天开始。默认值为1- 1 表示周日为一周的第一天,
- 2 表示周一为一周的第一天,
- ...
- 7 表示周六为一周的第一天
返回值:
number示例
从星期日开始计算周次
HZ_WEEKNUM(日期)从星期一开始计算周次
HZ_WEEKNUM(日期, 2)
2018年1月份日历:(周一为每周的第一天)
周次|周一|周二|周三|周四|周五|周六|周日 -|:-😐:-😐:-😐:-😐:-😐:-😐:-😐- 第一周|1|2|3|4|5|6|7 第二周|8|9|10|11|12|13|14 第三周|15|16|17|18|19|20|21 第四周|22|23|24|25|26|27|28 第五周|29|30|31
2018年1月份日历:(周日为每周的第一天)
周次|周日|周一|周二|周三|周四|周五|周六 -|:-😐:-😐:-😐:-😐:-😐:-😐:-😐- 第一周| |1 |2 |3 |4 |5 |6 第二周|7 |8 |9 |10|11|12|13 第三周|14|15|16|17|18|19|20 第四周|21|22|23|24|25|26|27 第五周|28|29|30|31
ISO周数
返回给定日期在全年中的ISO周数。ISO周数指国际标准周。定义请参考:https://en.wikipedia.org/wiki/ISO_week_date
用法
HZ_ISOWEEKNUM(timestamp)
参数
timestamp日期是Excel用于日期和时间计算的日期-时间代码。
返回值:
number示例
HZ_ISOWEEKNUM(HZ_DATE(2018, 2, 23))结果为:8HZ_ISOWEEKNUM(HZ_DATE(2018, 2, 26))结果为:9结果不同是因为ISO标准中的日期和各地区的日期相差有时差。
