这个Excel公式绝了!一键列出两个日期间的所有日期!

醉香说职场 2024-09-04 03:53:03

我是【桃大喵学习记】,欢迎大家关注哟~,每天为你分享职场办公软件使用技巧干货!

——首发于微信号:桃大喵学习记

日常工作中,我们有时需要列出两个指定日期之间的所有日期,或者找出最近7天/15天/30天的日期等等。今天就跟大家分享一个特别牛的Excel公式,轻松搞定上面的问题。

场景一、列出两个指定日期之间的所有日期

如下图所示,我们需要列出2024-7-1到2024-7-14中间的所有日期。

只需在目标单元格中输入公式:

=IF($B$1+ROW()-1>=$B$2,"",$B$1+ROW()-1)

然后下拉填充数据,直至单元格内容为空。

解读:

①公式中$B$1+ROW()-1这部分就是单元格B1当前日期加上当前行的行号减去1。这里ROW()是从E2单元格开始获取数据开始值是2,所有要减去1,这样就能使日期从1开始递增。$B$1是开始日期绝对引用,意味着无论公式被下拉填充到哪一行,它都指向单元格B1。

②用IF函数判断如果$B$1+ROW()-1获取的日期大于等于结束日期$B$2,就返回空值,否则返回对应的日期$B$1+ROW()-1

场景二、列出最近7天/15天/30天的日期

如下图所示,我们想根据下拉菜单对应的最近7天/15天/30天的日期,也就是从当前日期往前列出7天/15天/30天的日期。

只需在目标单元格中输入公式:

=IF($E$2-$C$2+ROW()-2>$E$2,"",$E$2-$C$2+ROW()-2)

然后下拉填充数据,直至单元格内容为空。

解读:

①其实,这个公式原理跟上面是一样的,$E$2-$C$2+ROW()-2就是用到期日期减去往前的天数,然后获得最早的天数,ROW()是从C3单元格开始获取数据开始值是3,所有要减去3,这样就能使日期从1开始递增。$E$2和$C$2都要绝对引用。

②用IF函数判断如果$E$2-$C$2+ROW()-2获取的日期大于当前日期$E$2,就返回空值,否则返回对应的日期$E$2-$C$2+ROW()-2

当然如果是想列出从当前日期往回连续7天/15天/30天的日期

只需在目标单元格中输入公式:

=IF($E$2+ROW()-3>=$E$2+$C$2,"",$E$2+ROW()-3)

然后下拉填充数据,直至单元格内容为空。

原理跟前面相同,就不再做公式解读。

以上就是【桃大喵学习记】今天的干货分享~觉得内容对你有所帮助,别忘了动动手指点个赞哦~。大家有什么问题欢迎关注留言,期待与你的每一次互动,让我们共同成长!

0 阅读:1