根据日期计算季度(各种方法大杂烩)

小伙伴们好,今天来分享下根据日期计算季度的各种方法。我这里列举10来种,平时用也足够了。高手能写100多种,这就是差距啊。对这个问题感兴趣的小伙伴可以去网上搜一下更多的解法。
计算各日期是第几季度
如下图所示,A列是一些日期,求出对应的季度。下图我只截图了4种公式比较短的方法,打算把这4种方法的计算过程给大家截图说明一下。其余的公式我也会在下面写出来,如果看不懂公式,可以下载文件,慢慢学习。
先看第1种roundup,公式为=ROUNDUP(MONTH(A4)/3,),如下图E列所示。其中B列是用month取出月份,C列是用B列的月份除以3,D列是用roundup将C列的结果向上舍入到个位。
这种方法我认为最好理解,一个季度有3个月,提取出的月份除以3就是有几个季度。如果除出的结果有小数,就要向上进位。比如10月份,除以3得到3.33333,超过3个季度了,肯定就是第4季度。
第2种int,公式为=INT((MONTH(A4)+2)/3),如下图E列所示。B列还是用month取出月份,C列是用B列的月份加2,D列是用C列的结果除以3,E列是用int把D列的结果取整。
这样说你可能看不出规律,如果把日期的月份改为1到12月,你可能就会看出一些规律。如下图所示。我们只是为了把1,2,3月变为111;4,5,6月变为222;7,8,9月变为333;10,11,12月变为444。其实在学int函数时就学过,如何通过序列数变为重复几次的序列数。
第3种len,公式为=LEN(2^MONTH(A4)),如下图E列所示。还是用1到12月的序列日期来说明吧,看起来比较直观。B列是用month取出月份,C列是用B列的月份作为2的几次方,D列是用len计算C列的字符个数。这里是一种数学关系,比较巧妙。
第4种month,公式为=MONTH(MONTH(A4)*10),如下图所示。还是用1到12月的序列日期演示,看起来比较直观,容易看出规律。B列用month提取出月份,C列是用B列的月份乘以10,这样就得到10,20,30...120。但如果将其转为日期格式,就是下图C列的效果。D列再用month取出C列日期的月份,刚好是季度。这种方法也是巧妙,刚好1900年有2月29号。
第5种match,公式为=MATCH(MONTH(A4),{1,4,7,10})。
第6种lookup,公式为=LOOKUP(MONTH(A4),{1,4,7,10},{1,2,3,4})。
第7种lookup,公式为=LOOKUP(MONTH(A4)+2,{3,6,9,12})/3。
第8种sum,公式为=SUM(N(MONTH(A4)>{9,6,3,0}))。
第9种frequency,公式为=MATCH(1,FREQUENCY(MONTH(A4),{3,6,9,12}),)。
第10种if,公式为=IF(MONTH(A4)>9,4,IF(MONTH(A4)>6,3,IF(MONTH(A4)>3,2,1)))。
第11种text,公式为=TEXT(MONTH(A4),"[>9]4;[>6]3;"&TEXT(MONTH(A4),"[>3]2;1"))。
第12种vlookup,公式为=VLOOKUP(MONTH(A4),{1,1;4,2;7,3;10,4},2)。
上面这些方法,思路基本都差不多,只是函数有些不同。希望这些方法对您有所启发。如果文章对您有所帮助,请打赏一下,算是给我一些动力,要不然我很难持续写下去。哪怕帮点下在看或分享转发一下也好,这对我很有帮助。
链接:
https://pan.baidu.com/s/15EGYfmbhsU6YzEW84Xso6A
提取码:h2g2
(0)

相关推荐