workday.intl使用自定义周末参数返回指定工作日之前或之后的日期 2024-08-06 07:03:38 你好,我是刘卓。欢迎来到我的公号,excel函数解析。昨天分享了workday的用法,今天来讲下workday.intl的用法。它和workday的用法基本上是一样的,但是它有个周末参数,可以自己定义周末有几天,分别是哪几天。比workday更加灵活实用。-01-函数说明workday.intl使用自定义周末参数返回起始日期之前或之后的n个工作日的日期。周末参数指明周末有几天以及是哪几天,周末和任何指定为假期的日期都不被视为工作日。语法如下,有4个参数。WORKDAY.INTL(start_date, days, [weekend], [holidays])第1参数Start_date :必需。是起始日期。第2参数Days :必需。起始日期之前或之后的工作日的天数。如果是小数,将被截尾取整。第3参数weekend :可选。是一个用于指定周末的数字或字符串。它有多种类型,像weekday的第2参数一样,如下图所示。1或省略代表周末是周六和周日。2代表周末是周日和周一。11代表周末仅是周日,此时周末只有1天。除了用数字指定周末,还可以用字符串指定,比如"0000011"。字符串的长度为7,分别代表周一到周日。而且在字符串中只允许使用0和1,1代表周末,0代表非周末或工作日。"0000011"代表的意思是周末是周六和周日。使用字符串指定周末更加灵活强大。第4参数holidays :可选。代表节假日。可以是包含节假日的单元格区域或常量数组。-02-示例解释如下图所示,起始日期是2020/4/13,工作日的天数是6天,周末参数选1,代表周末是周六和周日,最后返回的结果是2020/4/21。也就是起始日期之后的第6个工作日的日期,你可以参考下图的日历,我就不标出来了。周末参数是1的时候也可以忽略不写,公式为=WORKDAY.INTL(A3,B3)。这样的话就和workday的用法一样了,默认周末是周六和周日。再来看下第2个例子,公式为=WORKDAY.INTL(A4,B4,11)。起始日期和工作日的天数都不变,只有周末参数变为11,代表周末只有周日。最后返回的结果为2020/4/20。还是参考上图的日历,周六此时是工作日,所以要算进去。下面列举几个字符串,让大家明白字符串代表的周末是哪些。字符串代表的周末知道了,就来看下下面的示例。公式为=WORKDAY.INTL(A15,B15,"0000011"),第3参数代表周末是周六和周日,和=WORKDAY.INTL(A15,B15,1)这个公式是一样的意思,所以最后的结果还是2020/4/21。第2个你自己看下吧。最后再来看下有节假日的情况。节假日假定有3天,如F20:F22所示。D20的公式为=WORKDAY.INTL(A20,B20,"0000011",F20:F22)。周末是周六和周日,然后节假日又有3天。所以要把周末和节假日去掉。2020/4/13往后推6个工作日,结果就是2020/4/23,如下图日历所示。15号和16号是节假日,要排除;18号和19号是周六和周日,也要排除。这里19号既是周末又是节假日,只排除一次。示例写了这么多,就是为了让你搞清楚这个函数是怎么得出结果的。第3参数是周末,第4参数是节假日。如果一个日期是周末,或者是节假日,或者既是周末又是节假日,那么把它排除就可以了。因为这几种情况,它都不是工作日。下面看一个具体的应用吧。-03-具体应用1.计算每年的感恩节的日期计算一下每年的感恩节是几月几号,比如今年的感恩节是2020/11/26。那么感恩节是怎么算的呢?它是每年的11月的第4个星期4。看到这个问题,你第一个想到的方法是什么?我第一个想到的方法是先算出11月的第1个星期4的日期。随后又想到了万金油的方法。但是这些方法都要用到数组,而且公式比较长。而用workday.intl就很简短。在B27单元格输入公式=WORKDAY.INTL(DATE(A27,11,),4,"1110111"),向下填充。DATE(A27,11,)这部分返回10月的最后一天的日期。"1110111"这个字符串代表的意思是只有周四是工作日,其他都是周末。也就是说一周只工作一天,这样的工作不要太爽。注意"1111111"这个字符串是无效字符串,不要想着一周全休,达到财务自由才有可能实现。"0000000"一周无休倒是可以实现的。说了点题外话,还是回到咱们的题目。也就是说从10月的最后一天往后推4个工作日,而每个工作日刚好是一个周四,所以第4个工作日就是第4个周四。这样说不好理解,还是参考下图的日历。蓝色框标记的都是周末,所以要排除,只有红圈标记的是工作日。这就是用字符串指定周末的强大之处,可以自己定义周末是几天以及是哪几天,只要不超过7天就可以了。上面的例子我们定义周末是6天,工作日是1天。学会了计算感恩节的日期,你也可以算一下父亲节和母亲节的日期。其实这个问题的本质就是计算某年某月第几个星期几的日期。下面这个公式是先计算出第1个星期4的日期,再加21天就是第4个星期4的日期。第1个星期4的日期是怎么算出来的呢?首先找到11月的1到7号,1到7号中肯定包括周一到周日,只不过顺序是乱序。然后把1到7号的日期转为周几,再找到周四的位置,由这个位置可以知道它是几号,进而可以知道它的日期。可以参考下图的日历,首先找到11月的1到7号,如蓝色框所示。这7天中肯定包含周一到周日,然后把它们转为周几,如蓝框上面的小红字,11月5号是周四,返回4。接下来查找周四的位置,返回5。5刚好就是11月的5号。11月的第1个周四是11月5日,第4个周四就是11月5日再加21天。万金油的公式为=SMALL(IF(WEEKDAY(DATE(A27,11,)+ROW($1:$31),2)=4,DATE(A27,11,)+ROW($1:$31)),4),按ctrl+shift+enter三键结束。思路是在11月的所有日期中,找到哪些日期是周四,最后再找出第4个周四。链接:https://pan.baidu.com/s/1YLJu6kkx6hohY3_cMvUhnQ提取码:mmix 赞 (0) 相关推荐 这些实用的日期函数,你都会了吗? HI,大家好,我是星光,这期咱们来聊一下有关过去和未来的函数问题-- 关于未来呢,首先请不要偶尔悲观,有个姓列的老师说过,面包会有的,牛奶会有的,将来一切都会有的--不过反正现在是没有的. 来,快请坐 ... 菜鸟记138- EXCEL中进行工作日期计算的三个小栗子 关键词:EXCEL2016:填充:WEEKDAY函数: TEXT函数:自定义格式:WORKDAY函数:操作难度*** 小菜在日常的教学管理工作中,经常需要在EXCEL中处理关于日期,特别是工作日日期 ... networkdays.intl使用自定义周末参数返回两个日期间的工作日数 你好,我是刘卓.欢迎来到我的公号,excel函数解析.昨天讲了networkdays的用法,今天来讲下networkdays.intl的用法,它可以自定义周末,来计算两个日期间的工作日数,比netwo ... workday计算指定工作日之前或之后的日期 你好,我是刘卓.欢迎来到我的公号,excel函数解析.今天和你分享的函数是workday,看这个单词就知道它和工作日有关,它返回起始日期之前或之后n个工作日的日期.工作日不包含周末和节假日.下面来看下 ... postman使用教程5-Test脚本中自定义变量(参数关联) 前言 上个接口返回token,下个接口需在请求头部传token,这就是我们经常说的参数关联. postman 如何实现参数关联呢?可以在Tests 脚本中自定义变量. 查询个人信息接口 需用户先登录, ... 回去工作:英国首相下令,公务员下周末前返回办公室 这是唐宁街上的猫第1415篇原创文章 英国首相鲍里斯约翰逊已下令,公务员下周末前返回办公室工作.首相已经取消了他 "在家工作"要求,以期使官员们重新到办公室上班,并以此提升公共服务 ... edate返回指定月数之前或之后的日期 你好,我是刘卓.欢迎来到我的公号,excel函数解析.昨天分享了eomonth的用法,它是返回某个月份最后一天的日期.今天要分享的函数是edate,它返回指定月数之前或之后的日期.与eomonth有点 ... mod函数中负数参数返回结果的规律总结 小伙伴们,大家好.我们之前在mod函数中用的参数都是正数,今天来看看如果参数中有负数会返回什么样的结果.先来看个简单的例子,如下图所示,AB两列分别是被除数和除数,C列是返回的余数,D列是公式. 为了 ... Excel常用自定义格式参数 自定义格式在日常工作中的应用非常广泛,下面就列举一些常用的自定义格式代码以及代码的作用. 自定义格式代码结构组成分为四个部分,中间用";"号分隔,具体如下: 正数格式:负数格式:零 ... 14.3.0Excel用row和column函数返回指定单元格的行列号 14.3.0Excel用row和column函数返回指定单元格的行列号 PHP实现IOS极光推送自定义副标题方法和指定跳转页面 PHP实现IOS极光推送自定义副标题方法和指定跳转页面 最近发现极光推送里,安卓有个addAndroidNotification($content, $title, 1, array("ni ...