|
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用 · 内置多项VBA编程加强工具 ★ 免费下载 ★ ★ 使用手册★
本帖最后由 wshcw 于 2012-10-23 18:37 编辑
Excel中与今天有关的计算37问
日期问题与日常生活、工作密切相关,在信息时代学习一点与生活相关的EXCEL知识总会有用处的。在学习中,不只是从别人那儿拷贝东西来,而是:复制〉选择性粘贴〉精髓和创新意识。个人感觉EXCEL是属于被许多人低估了的工具,好好学习它,终有它发挥作用的时刻。今天我根据论坛以往所发的日期贴子给大家整理了与今天有关的计算37问,希望对你学习和工作有启发作用。
第1题
今天是几号?
=DAY(NOW())
=TEXT(NOW(),"d")
第2题
今天是几月份?
=MONTH(NOW())
=TEXT(NOW(),"m")
第3题
今天是星期几?
=TEXT(NOW(),"aaaa")
=TEXT(NOW(),"aaa")
=WEEKDAY(NOW(),2)
第4题
今天是什么日子?
=TODAY()
=NOW()
第5题
今天是公元多少年?
=YEAR(NOW())
=TEXT(NOW(),"e")
第6题
今天是本年度的第几周?
=WEEKNUM(NOW())
=ROUNDUP((TODAY()-DATE(YEAR(NOW()),1,)+MOD(WEEKDAY(DATE(YEAR(NOW()),1,),2),7))/7,)
注:WEEKNUM需要加载分析工具库才能使用本函数
第7题
今天是第几季度了?
(1)数字格式
=LEN(2^MONTH(NOW()))
=MONTH(MONTH(NOW())&0)
=INT(MONTH(NOW())/3+0.7)
(2)中文小写格式
=TEXT(MONTH(NOW())/3+1.7,"AAA季度")
=TEXT(LEN(2^MONTH(NOW()))+1,"AAA季度")
=NUMBERSTRING(LEN(2^MONTH(NOW())),3)&"季度"
=TEXT(MONTH(MONTH(NOW())&0),"[dbnum1]0季度")
这个题,解题思路相当邪,邪到让数学大师瀑汗。
第8题
今天是今年的第几天?
=TODAY()-"1-1"+1
第9题
今天属什么?
=MID("猴鸡狗猪鼠牛虎兔龙蛇马羊",MOD(NOW(),12)+1,1)
第10题
今天是本季度的第几天?
=COUPDAYBS(NOW(),6^9/9,4,1)+1
第11题
今天所在的季度有几天?
=COUPDAYS(NOW(),6^9/9,4,1)
第12题
今天是本月的第几周?
=INT((DAY(NOW())+MOD(NOW()-DAY(NOW()),7)-1)/7)+1
第13题
今天离元旦还有多少天?
=(YEAR(NOW())+1&-1)-TODAY()
="12-31"-TODAY()+1
第14题
今天离春节还有多少天?
解法一、
=MATCH("-1-1",TEXT(NOW()+ROW($1:$366),"[$-130000]-m-d"),)
本题答案有局限性,【适用日期范围至农历2026年春节止】,并且是一个数组公式
核心是通过TEXT(日期,"[$-130000]-m-d")将日期转成农历日期【07(含)以后的版本才能用】。
解法二、
=MIN(--TEXT({40223;40577;40931;41315;41670;42054;42408;42763;43147;43501;43855;44239;44593;44948;45332;45686;46070;46424;46778;47162;47517;47871;48255;48610;48994;49348;49702;50086;50440;50794;51178;51533;51888;52272;52626;53010;53364;53718;54102;54456;54811;55195;55550;55934;56288;56642;57025;57380;57734;58118;58473;58827;59211;59565;59949;60303;60658;61042;61396;61751;62135;62489;62873;63227;63581;63965;64320;64674;65058;65413;65767;66151;66505;66889;67243;67598;67982;68336;68691;69074;69428;69812;70166;70521;70905;71260;71614;71998;72352;72706;73090}-TODAY(),"0;555"))
这个解法的思路是:列出2010年至2100年春节的日期序列数,与TODAY相减,算出>=0的最小值。
如果知道春节的公历日期可以直接相减:
="2012-1-23"-TODAY()
第15题
这个月有几天?
=DAY(EOMONTH(NOW(),0))
第16题
这个月第一天是哪天?
=NOW()-DAY(NOW())+1
=--TEXT(NOW(),"e-m")
第17题
这个月还有几天?
=DATE(YEAR(NOW()),MONTH(NOW())+1,)-TODAY()
=EOMONTH(NOW(),0)-TODAY()
第18题
这个月最后一天是哪天?
=TEXT(NOW()-DAY(NOW())+32,"e-m")-1
=TEXT(TEXT(NOW(),"e-m")+31,"e-m")-1
=EOMONTH(NOW(),0)
第19题
这个月一共有几周?
=WEEKNUM(DATE(YEAR(NOW()),MONTH(NOW())+1,0))-WEEKNUM(DATE(YEAR(NOW()),MONTH(NOW()),1))+1
=WEEKNUM(DATE(YEAR(NOW()),MONTH(NOW())+1,))-WEEKNUM((MONTH(NOW())&-1)-1)+1
第20题
这个月有几个星期五?
=COUNT(0/(MOD(MONTH(NOW())&-ROW(1:29),7)=6))
第21题
这个月得上几天班?(不考虑法定节日)
=NETWORKDAYS(DATE(YEAR(TODAY()),MONTH(TODAY()),1),DATE(YEAR(TODAY()),MONTH(TODAY())+1,0))
=COUNT(0/(MOD(MONTH(NOW())&-ROW(1:39),7)>1))
第22题
这个月能休息几天?(不考虑法定节日)
=SUMPRODUCT(N(MOD(TEXT(MONTH(NOW())&-ROW(1:39),"0;;;\5"),7)<2))
=COUNT(0/(MOD(MONTH(NOW())&-ROW(1:39),7)<2))
=COUNT(0/(WEEKDAY(MONTH(NOW())&-ROW(1:39),2)>5))
第23题
这个月月英文全写公式如何写?
=TEXT(NOW(),"mmmm")
第24题
这个月英文简写公式如何写?
=TEXT(NOW(),"mmm")
第25题
这个月中文小写月公式如何写?
=TEXT(NOW(),"[DBNum1]m月")
=TEXT(MONTH(NOW()),"[DBNum1]")&"月"
第26题
这个月中文大写月公式如何写?
=TEXT(NOW(),"[DBNum2]m月")
=TEXT(MONTH(NOW()),"[DBNum2]")&"月"
第27题
下个月有几天?
=DAY(EOMONTH(NOW(),1))
第28题
上个月有几天?
=DAY(NOW()-DAY(NOW()))
=DAY(EOMONTH(NOW(),-1))
第29题
上个月最后一天是哪天?
=NOW()-DAY(NOW())
第30题
下个工作日是哪天?
=WORKDAY(TODAY(),1)
=MIN(IF(MOD(TODAY()+{1,2,3},7)>1,TODAY()+{1,2,3}))
=INDEX(TODAY()+{1,2,3},MATCH(,0/(MOD(TODAY()+{1,2,3},7)>1),))
=MATCH(,0/MOD(MOD(TODAY()+{0,1,2},7),6),)+TODAY()
=3-MIN(2,MOD(TODAY()+1,7))+TODAY()
=TODAY()+TEXT(WEEKDAY(NOW())-6,"2;1;3")
=TODAY()+TEXT(MOD(TODAY()-1,7)-5,"2;1;3")
第31题
今年有多少天?
=SUM(DATE(YEAR(TODAY())+{1,0},1,1)*{1,-1})
=365+COUNT(-"2-29")
="12-31"-"1-1"+1
第32题
今年是闰年吗?
=IF(MONTH(DATE(YEAR(TODAY()),2,29))=2,"是","否")
=IF(COUNT(-"2-29"),"是","否")
第33题
2008-2-28出生的宝宝多少天了?
=DATEDIF(LEFT(B35,9),NOW(),"d")
=TODAY()-LEFT(B34,9)
第34题
2008-2-28出生的宝宝几个月了?
=DATEDIF(LEFT(B35,9),NOW(),"m")
第35题
2008-2-28出生的宝宝几周岁了?
=INT(YEARFRAC(LEFT(B36,9),NOW(),1))
=DATEDIF(LEFT(B36,9),NOW(),"y")
第36题
今年的母亲节是哪天?
="2011-5-1"-WEEKDAY("2011-5-1",2)+14
=CEILING("4-30",7)+8
=FLOOR("5-6",7)+8
注:CEILING是按倍向上取整函数,FLOOR是按倍向下取整函数。
第37题
1992年3月18日离今天有几年几月几日
=TEXT(SUM(DATEDIF(LEFT(B38,10),NOW(),{"y","ym","md"})*10^{4,2,0}),"#年00月00日")
具体内容看附件,1楼是RORD附件,EXCEL的附件点击以下链接下载10楼附件:
日期函数37问(EXCEL格式)
|
评分
-
10
查看全部评分
-
|