excel日期转换为周
1 一、获取“年月日”信息
获取“年月日”的信息比较简单,方法也比较多,用单一的函数(如TEXT函数)就可以实现,现举例如下:
=TEXT(A2,"YYYY年")
=TEXT(A2,"M月")
=TEXT(A2,"d日")
2 需要注意的是用TEXT函数提取到的“年月日”信息是文本型的,无法直接进行计算,如果要进行计算,一般情况下要分别用YEAR、MONTH、DAY三个函数。举例如下:
返回数值型的年份:=YEAR(A2)
返回数值型的月份:=MONTH(A2)
返回数值型的日:=DAY(A2)
3 二、获取“周数”信息
获取“周数”的信息就要复杂一些,虽然WEEKNUM函数可以直接返回一个日期对应的周数,但WEEKNUM函数是将1月1日所在的周视为一年中的第一周。然而,在实际应用中则是将包含新的一年中天数较多(四天或更多)的一周定义为第一周。这表明对于三天或少于三天的一月份的第一周,按照实际应用,WEEKNUM函数返回的周数是错误的。不过这可以用函数和公式来调整和避免的。
1、将1月1日所在的周视为第一周
这样的“周数”很简单,直接用WEEKNUM函数即可:
=WEEKNUM(A2,2)
4
2、新的一年中天数较多的一周为第一周
这样的“周数”就不能直接用WEEKNUM函数,而是需要进行计算,公式如下:
=IF(WEEKNUM(A2,2)-1=0,WEEKNUM(DATE(YEAR(A2)-1,12,31),2),WEEKNUM(A2,2)-1)
5
三、获取“工作日”信息
这里的“工作日”是指每周的周几信息,也相对比较简单,直接用现在的函数WEEKDAY就可以了。不过这个函数返回的数值,需要通过其他函数和公式转换成中文的显示习惯,转换的方法很多,大家可以仁者见仁,智者见智。我下面只是例举其中一种方法。公式如下:
=LOOKUP(WEEKDAY(A2,2),{1,2,3,4,5,6,7;"星期一","星期二","星期三","星期四","星期五","星期六","星期日"})
6
四、获取“季度”信息
Excel中没有直接的函数可以返回一个日期对应的“季度”信息,因此这需要充分发挥各自的聪明才智来解决这个问题。我的方法是通过下面的公式来实现:
=LOOKUP(LEN(2^MONTH(A2)),{1,2,3,4;"一季度","二季度","三季度","四季度"})
上面的公式直接返回的是中文习惯的季度信息,如果只是需要数值型的季度信息,只需要以下公式就可以了:
=LEN(2^MONTH(A2))
7
Excel中日期的相互转化还有很多方法,大家可以在日常工作中不断总结、积累、分享。