三分钟,提取指定日期范围的数据

您所在的位置:网站首页 vlookup返回固定值 三分钟,提取指定日期范围的数据

三分钟,提取指定日期范围的数据

2023-09-17 11:14| 来源: 网络整理| 查看: 265

姓名、日期纵向排列,没有空行或者合并单元格,生日列也都是日期格式。太好了,这才是原始数据应有的自觉!

在这里插一句:对于日期格式,Excel只认“/”、“-”做为间隔,“.”或者无间隔是不可以的。日期本身对Excel来说就是个数字,1900-1-1对应的是1,这样Excel才能进行日期的计算。

回到正题,首先我们要告诉Excel周一到周日的日期是哪两天

= TODAY-WEEKDAY(TODAY,2)+1

这个公式涉及两个函数:TODAY告诉我今天是几号,WEEKDAY第一个参数是指定日期,第二个参数是告诉我们该日期是所在周的第几天,下图为WEEKDAY第二个参数所对应的返回值如下:

以2021-1-29星期五为例,上述公式得到的结果是:44225-5+1=44221,转换为日期格式就是2021-1-25,即本周一所对应的日期,这个日期得出后,我们就可以轻松的得出本周日的日期啦,只需要在G1单元格输入“=F1+6”,调整为日期格式就好啦~

再炫技拓展一下,我想要根据E列所选择的结果得到相应的日期,即上周、本周、下周分别对应的日期是什么。

首先,在E1单元格设置下拉菜单,为使用者提供特定的选择:

【E1】—【数据】—【数据验证】—【序列】—【本周,上周,下周】—【确定】

注意:间隔符是英文输入法下的逗号!

再将F2单元格公式改一下:

=TODAY-WEEKDAY(TODAY,2)+1+VLOOKUP(E1,{"本周",0;"下周",7;"上周",-7},2,0)

即在原有基础上加了一个VLOOKUP函数,该函数的作用是搜索表区域首列满足条件的元素,确定待检索单元格在区域中的行序号,再进一步返回选定单元格的值,翻译成普通话的意思就是:

VLOOKUP(找啥,在哪找,要第几列数据,怎么找)

在这个公式中的意思就是,如果E1为本周,该函数返回值为0;如果E1为下周,该函数返回值为7;如果E1为上周,该函数返回值为-7。这三个数与之前的公式相加,就能得出相应的日期啦!

好了,现在如何判断表一中的日期是否符合条件呢?

我在姓名列前插入了一列辅助列,用来将符合日期条件的信息筛选出来,公式如下:

IF函数的作用是判断是否满足条件,如果满足返回一个值,如果不满足返回另一个值,用法为:

IF(啥条件,是真的就给你一朵小红花,是假的就给你一个大嘴巴)

因为需要同时满足两个条件,所以我在IF里嵌套了AND函数,公式翻译过来就是:如果C列的日期在F1和G1所得出的日期中间,则返回值为上一单元格的值+1,否则与上一单元格内容一致,下拉/双击填充,就得到了表一中A列的结果。

从开篇的动图中可以看出,表二中序号列是动态取数的,这是怎么做到的呢?

E3单元格直接输入1,E4单元格中输入公式:

=IF(E3



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3