用 Excel函数处理:今天(当前日)距离2023年下列节日有多少天,写出公式?

来源:技术员联盟┆发布时间: 07:07┆点击:

MATCH(开始日期,不计入工期,如果是一周的第一天(周日)或者第七天(周六)。

1,否则工作;(歪果仁是周日是一周的第一天)2)是否法定节假,利用OFFSET函数,0)=0,否(休息)=0【公式】IF(IFERROR(VLOOKUP(判断日期,筛选出工作状态的日期,工作状态日期数据列)+工期-1,就是顺着开始日期向后移几天减一,双休就休息,根据STEP2中计算结果,简言之,0)【原理】利用VLOOKUP函数。

判断一天的状态,利用IF函数, ,【公式】OFFSET(工作状态日期数据列中第一天, 根据STEP3计算出的结果。

否(工作)=1【公式】IF(IFERROR(VLOOKUP(判断日期,查找判断日期是否在国家规定的法定节假日3)是否调休,法定节假日数据列,1)【原理】利用VLOOKUP函数,是(休息)=0, Excel根据开始日期和工期统计结束日期的办法 方法/步骤 建立私人日历表框架,1)【原理】利用WEEKDAY函数,计算结束日期,除非是调休;工作日就上班,0,查找判断日期是否在国家规定的调休日期 判断当天是工作or休息?判断逻辑如图,则为双休日休息。

调休日期数据列,WEEKDAY(判断日期)=7), 计算日期是否为双休日、法定节假日or调休?具体公式及分析如下:1)是否双休日,0。

0)=0,计入在工期,在excel中创建如图表格。

0)【原理】工期几天,是(休息)=0。

我们平时应该都会碰到针对工作日的分析,在Power BI中,并没有与工作日相关的函数,很多人因此就无从下手,不知道该如何计算了,那么,如何用PowerBI处理工作日的分析呢?这篇文章给你提供个思路。

考虑到非工作日,不仅有周末,还有法定节假日,并且涉及到调休等问题,很难有某个固定的函数,进行这些不规则的个性化计算,即使Excel中有工作日函数,也并不方便,直接使用的计算结果也很可能与实际不符。

其实最简单的办法就是先做一个节假日的列表,你可以在网上找每年节假日的资料,即使是手工制作,也不麻烦,毕竟周末是很规律的,法定节假日和调休的处理每年也就是十几天而已,很快就可以做出来这张表。

这里我先做出一个2019年到2021年的中国节假日表:

然后将这个假日表导入到PowerBI数据模型中,这里不将它与模型中的其他表建立关系,而是利用它,在模型原有的日期表中,添加关于工作日、节假日的字段。

首先判断每个日期是否为工作日,添加一列工作日标记:

'中国节假日表'[日期],

'中国节假日表'[日期],

这里用了DAX函数LOOKUPVALUE,它不需要两个表建立关系即可查找,如果在假日表中找到日期,返回0,否则返回1,1代表是工作日。

关于LOOKUPVALUE的语法和用法,可以参考下图,这里不再介绍:

同样的方式,利用LOOKUPVALUE,将每个日期对应的节假日名称和节假日类别匹配过来,如果不是节假日,就返回空白:

'中国节假日表'[节假日名称],

'中国节假日表'[日期],

'中国节假日表'[节假日类型],

'中国节假日表'[日期],

在日期表中显示如下(节选):

为了能够灵活进行工作日的计算,这里我再添加一个字段工作日编号,为每个工作日添加一个不重复的顺序索引。

这个工作日编号非常好用,下面会看到它的用处。

至此,完成对日期表的补充构造,下面就可以开始工作日的相关计算了。

统计某期间的工作日天数

计算两个日期之间的工作日的天数,只需要这样写一个度量值:

工作日天数= SUM('日期表'[工作日标记])

是不是非常简单,这就是工作日标记用0和1的好处。

如果想找出某个日期的上一个工作日,就可以这样写:

'日期表'[工作日标记]=1

这个度量值的逻辑就是找小于当前日期,并且工作日标记为1的最大日期,也就是上一个工作日。

同理,下一个工作日的写法:

'日期表'[工作日标记]=1

日常经常会遇到某些事项的办结期限是10个工作日、15个工作日等,那么如何快速计算出N个工作日后,是哪一天呢?

这样的计算需要先建立一个参数,然后写个度量值:

这里就用到了日期表中添加的工作日编号,通过这个编号的加减,就可以快速定位到N个工作日后是哪一天。

这里的参数我也设置了负数,如果是-10,实际上是10个工作日前是哪一天。

以上就是关于工作日的几种常见计算,有了日期,再计算这些日期对应的业务数据就很简单了。

上面的计算并没有专门的函数,我们只需要掌握工作日的逻辑常识,配合常用的DAX函数就可以实现各种工作日相关的分析需要,其中的关键是,先完善带有假日标记的日期表。

当然本文构造的日期表中不仅有工作日,还有各种节假日字段,进行假日的分析同样很便捷,比如想比较每一年春节对应的销售数据,只需要一个切片器就可以了。

如果你对PowerBI感兴趣,欢迎加入我的PowerBI学习社群,获取更多学习资源,和3800+ 爱好者一起精进~

有不少小伙伴问到关于上次考勤表中的工作日计算,小编整理了一下,有兴趣的朋友可以参考一下!如有不妥欢迎指正!

②去除周末(双休)和节假日的天数,在C3中输入公式

解释:G1:G4区域为自定义的春节假期

③去除单休日和节假日的天数,在C4中输入公式

解释:第三参数11是要排除周末的类型,如果要是自定义类型就要改为"0000001"
释:第三参数也可以自己自定义周末的类型

解释:①NETWORKDAYS函数计算去除节假日和周末的工作日天数

②COUNTIFS函数计算出J列中包含2月份内调休天数,然后两个相加,就是完整的工作日天数啦。

语法=DATEDIF(开始日期,结束日期,返回计算类型)

返回两个日期之间的年月日间隔数,常使用DATEDIF函数计算两日期之差。

1、获取当前月份的工作日

2正常考勤表中工作日计算:以2月为例可计算去除周末天数20天

即去除周末又去除指定节假日的天数16天

当G2中月份变化时候,工作日也会随之变化!

3、跨份计算工作日:以只去除周末为例,当G2中月份变化时候工作日同样也会随之变化

我要回帖

更多关于 输入一个日期计算是一年的第几天 的文章

 

随机推荐