三分钟,提取指定日期范围的数据 |
您所在的位置:网站首页 › vlookup返回固定值 › 三分钟,提取指定日期范围的数据 |
姓名、日期纵向排列,没有空行或者合并单元格,生日列也都是日期格式。太好了,这才是原始数据应有的自觉! 在这里插一句:对于日期格式,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 |