母亲节是什么时候?(计算母亲节的日期)

各位朋友,你们好。今天说说一个的日期计算。有些节日,不是一个固定的日期,比如:

母亲节:每年5月的第二个星期日;

父亲节:每年6月的第三个星期日;

感恩节:每年11月的第四个星期四。

那么,这种节日的日期,该如何计算呢?我们以母亲节为例,给大家说说几个思路。

备注:以下方法不一定是最精简的,提供思路供参考。


方法一

=DATE(2020,5,SMALL(IF(WEEKDAY(DATE(2020,5,ROW($1:$31)),2)=7,ROW($1:$31),31),2))

思路:

1、第一步:【DATE(2020,5,ROW($1:$31))】生成2020年5月1日至5月31日的所有日期;

2、第二步:【WEEKDAY(日期,2)】函数,计算2020年5月1日至5月31日中,每天是星期几;

3、第三步:【IF(星期=7,ROW($1:$31),31)】用IF函数来判断哪些天是星期日,如果是星期日,就返回当天的日期;否则为31;最后得到这样一个数组【{31;31;3;31;31;31;31;31;31;10;31;31;31;31;31;31;17;31;31;31;31;31;31;24;31;31;31;31;31;31;31}

4、第四步:从第三步的结果数组中,用SMALL函数,提取第二小的日期,得到【10】;

5、第五步:用DATE函数,将年、月、日组合起来,得到所需的日期。


方法二

=DATE(2020,5,1)-WEEKDAY(DATE(2020,5,1),2)+7*2

思路:5月1日 + 5月1日至5月第二个星期日的天数 = 5月第二个星期日的日期

1、第一步:在5月1日的基础上加上14天,得到一个新日期2020-5-15

2、第二步:用第一步得到的日期减去5月1日的星期(星期五,即5),得到最终的日期。


方法三

=WORKDAY.INTL(DATE(2020,5,0),2,"1111110")

WORKDAY.INTL 函数:返回指定的若干个工作日之前或之后的日期的序列号(使用自定义周末参数)。

WORKDAY.INTL(开始日期,之前/后的工作日天数,自定义周末参数,要排除的日期)

注意:

①Date(2020.5.0)表示4月的最后一天;

②之前的工作日天数用正数,之后的工作日天数用负数;

③自定义周末参数,如"1111110",七位数;1表示工作日,0表示周末,表示周日为工作日;

公式中的意思:2020年4月30日之后2个工作日的日期,然后定义工作日为周日,即可得到2020年5月1日后第二个周日的日期。

这里为什么不以5月1日开始呢?因为存在5月1日为周日的情况,如果5月1日为周日,计算出来的结果就会和实际结果相差一个星期。


今天的内容就分享到这里,你们学会了吗?大家可以尝试下用这三种方法计算下父亲节和感恩节的日期。

声明:好星座所有作品(图文、音视频)均由用户自行上传分享,仅供网友学习交流,版权归原作者上班下班所有,原文出处。若您的权利被侵害,请联系 删除。

本文链接:https://www.haoxingzuo.com/w/36423.html