使用Excel难免会遇到与日期有关的问题,今天分享一组实用公式,解决常见的日期类问题。 1. 计算指定日期所在月的第一天和最后一天 如图所示,根据某个日期得到对应的月初日期和月末日期,要解决这个问题需要用到EOMONTH函数,EOMONTH函数有两个参数,格式为:=EOMONTH(日期,月数),结果为该日期指定月数的最后一天。 例如公式=EOMONTH(A2,0),得到的就是指定日期当月的月末日期。 由此不难想到,月初日期就是上个月的月末日期之后的一天,因此公式就是: =EOMONTH(TODAY,-1)+1 通过这两个例子需要理解到,EOMONTH函数的第二个参数是可以使用负数的,正数代表日期之后的月数,负数代表日期之前的月数,而零代表本月。 另外一点就是涉及到日期问题时,解决方法往往不是唯一的,例如要取得指定日期的月初日期,其实还有很多思路,这个就留给大家思考吧,有其他解法可以留言分享。 2. 计算指定日期所在月的总天数 解决这个问题同样用到了EOMONTH函数,公式为:=DAY(EOMONTH(A2,0)) 首先得到当月的月末日期,再用DAY函数得到月末日期是几号,也就是当月的天数了。 3. 计算指定日期所在月份的工作日天数(不含周末) 要计算工作日,就一定少不了NETWORKDAYS函数,关于这个函数的用法,之前的教程也专门介绍过,这里简单说一下。 NETWORKDAYS(开始日期,结束日期),用于计算一段时间内排除了周六和周日的天数,也就是工作日的天数。 在本例中,开始日期和结束日期是用了例1中的公式得到的,因此最终公式为: =NETWORKDAYS(EOMONTH(A2,-1)+1,EOMONTH(A2,0)) 4. 计算指定日期到该月月底剩余的工作日数天数(不含周末) 有了上一个例子的解决思路,计算指定日期到月底的工作日天数就很容易了,只需要将开始日期改为指定日期后一天即可,公式为: =NETWORKDAYS(A2+1,EOMONTH(A2,0)) 5. 计算指定日期到月底剩余的天数 这个问题就很简单了,只需要使用月底日期减去指定日期就是剩余天数,公式为: =EOMONTH(A2,0)-A2 6.计算指定日期是周内第几天 涉及到周的计算时,会用到一个WEEKDAY的函数,这个函数也比较简单,需要两个参数,格式为:WEEKDAY(日期,选项),重点是这里的选项有很多: 按照我们的习惯,是把星期一看作一周的第一天,因此这个选项值通常使用2,公式为:=WEEKDAY(A2,2) 注意:WEEKDAY得到的并不是星期几,而是当第二参数为2的时候,结果正好与星期相同。 7.计算指定日期是年内第几天 要得到某个日期是年内第几天,思路并不难,用该日期减去当年的1月1日即可,公式为: =A2-DATE(YEAR(A2),1,1)+1 在这个公式中,首先用YEAR函数得到对应的年份,再用DATE函数得到该年第一天,再将两个日期相减即可。 8. 计算指定日期是年内第几周 要计算周数需要用到WEEKNUM函数,与WEEKDAY很相似,WEEKNUM同样有两个参数,而且第二个参数也是判断周几是一周的第一天。 假如以周一作为开始的话,公式就是=WEEKNUM(A2,2)。 ![]() 9.计算指定日期是月内第几周 思路:用该日期在年内周数减去当月第一天在年内的周数再加一。 公式为:=WEEKNUM(A2,2)-WEEKNUM(EOMONTH(A2,-1)+1,2)+1 ![]() 小结:关于日期类的问题,常用的函数其实并不多,也都不难,难点在于将具体问题分析明白并且找到适用的函数,再根据不同问题所涉及的计算规则利用一些数学计算的思路就能得到正确的结果了。 |
|