Excel公式和vba根据日期获取中文星期几的方法

  • 发布时间:2015年12月19日 12:42
  • 作者:杨仕航
  • 分类标签: Excel
  • 阅读(20944)
  • 评论(0)

Excel公式获取当前日期的中文星期几我总结了3种方法。

1、WeekDay + Choose

    ="星期"&CHOOSE(WEEKDAY(NOW()),"日","一","二","三","四","五","六")

该公式用WeekDay得到日期是星期几,不过是数字。再用Choose得到对应的汉字。

 

2、WeekDay + Text

    ="星期"&SUBSTITUTE(TEXT(WEEKDAY(NOW(),2),"[DBNum1]"),"七","日")

第1中方法用Choose函数写那些索引值有些麻烦。这里采用Text格式化输出。[DBNum1] 则是格式化为中文小写数字。那问题来了,“7” 的中文小写是“七”。所以用SubsTitute替换“七”为“日”。

 

3、Text

    =TEXT(NOW(),"aaaa")

没看错,就这么简单。格式化为“aaaa”,可以得到当前系统的日期格式。当前系统是中文的,所以可以得到星期几。

 

* 拓展一下:

计算星期几也有算法,蔡勒公式。有兴趣可以研究一下。对应的Excel公式如下:

    ="星期"&CHOOSE(MOD(INT(LEFT(YEAR(NOW()),2)/4)-2*LEFT(YEAR(NOW()),2)+TEXT(NOW(),"y")+INT(TEXT(NOW(),"y")/4)+INT(13*(MONTH(NOW())+(MONTH(NOW())<3)*12+1)/5)+DAY(NOW())-1,7)+1,"日","一","二","三","四","五","六")

 


Excel vba 得到当前日期的中文星期几我也总结了3种方法。

 1、WeekDay + Choose

    "星期" & Choose(WeekDay(Date),"日","一","二","三","四","五","六")

同样,WeekDay + Choose 这种方式在vba中也试用。当然你也可以把choose改成select case结构。

(Date 是vba中得到当前日期的函数)

 

2、WeekDayName

    WeekDayName(WeekDay(Date))

WeekDayName这个函数很直接。里面可以根据WeekDay的结果得到星期几。

 

    3、Format(Date,"aaaa")

哈哈哈,Text那个方法当然也是可行的。在vba中格式化输出函数是Format。

 

ps:蔡勒公式的vba代码有兴趣的话,可以自己尝试写一下。

上一篇:我的网站搭建(第10天) 上一篇和下一篇

下一篇:Access vba导出数据到Excel方法总结

评论列表

智慧如你,不想发表一下意见吗?

新的评论

清空