夜雨聆风学习资料网

ARTICLE · 1319439

EXCEL函数---核对两表数据差异---GROUPBY函数才是王者---VLOOKUP靠边站

EXCEL函数---核对两表数据差异---GROUPBY函数才是王者---VLOOKUP靠边站
核对两个表的数据差异,一直以来都很让人头疼,很多人也从网上搜了很多种方法,用起来也不是很顺心,很多情况达不到我们的预期效果
尤其是两个之前的顺序和行数都不一致的情况下,我们能想到的经常用的VLOOKUP函数根本就骑不上作用了
小白志在让办公变得人人都容易,如果有哪里不明白或者需要修改的地方,欢迎留言,感恩相遇,希望能帮到你
针对上面的情况,小白发现了一个有意思的函数,那就是GROUPBY函数,恰巧这个函数咱们在之前已经介绍过他的基础用法,如果对基础用法不太明白的小伙伴,可以去看一下小白前两期的内容。
小白会将方法和原理都与大家讲明白,我们来看一下数据源
一、数据源
我们刚经历了月末,月末需要进行的一件事儿就是库存盘点,现在我们将盘点表根据各个库存商品的存放位置进行了盘点,得到了一张盘点表
这时候我们还有一个库存表,库存表是各个库存商品的汇总表,现在我们需要比对实际库存与理论库存的差异,由于两个表的顺序和行数都不一致,这时候我们就无所事事了,不知道该怎么办,主要还是数据量特别大,该怎么做呢?
二、解决方案
其实这时候,我们仅仅需要用GROUPBY+VSTACK函数来组合一下,就瞬间解决了这个问题了应该怎么做呢?我们先来看一下公式

=GROUPBY(VSTACK(A3:A8,E3:E23),VSTACK(B3:B8,-F3:F23),SUM)

通过这个函数组合,我们发现盘点与实际的差异瞬间就解决了,正数代表库存多,负数代表库存少

我们在H3单元格直接录入公式,商品名称和数量差异直接自动列出,根本不需要我们再去做其他任何多余的动作

三、公式原理

如果看过咱们关于GROUPBY的讲解,上面的公式就很好记住,但是难得就是公式的工作原理,下面小白来讲解一下

VATACK函数其实就是纵向拼接函数,他的语法就是

=VATACK(区域1,区域2,。。。。)

语法看起来很简单,用起来也简单,他就是把不同的列进行纵向拼接,跟HSTACK是孪生兄弟,HSTACK是横向拼接

咱们上面的公式用了两个VSTACK,第一个VSTACK函数VSTACK(A3:A8,E3:E23)也就是把库存里的商品名称和盘点表里的库存名称纵向连接了起来

关键是第二个VSTACK函数的连接,不知道大家看到了没有

VSTACK(B3:B8 ,  -F3:F23),名义上他是把库存表里的数量和盘点表里的数量连接了起来,但是咱们这里针对盘点表的数量前面加了一个符号-

这是什么意思呢?这其实就是在新组合的数据里,正数就代表库存表的数据,负数就代表盘点表里的数据,如下图

接下来咱们用用GROUPBY函数的特性,将新组合的两组区域进行求和,就可以瞬间得到两组数据的差异了,并且随着数据的更新而更新

小白志在让办公变得人人都容易,如果有哪里不明白或者需要修改的地方,欢迎留言,感恩相遇,希望能帮到你

回首页,搜索你想要的文档

在首页搜索框输入关键词,快速定位资料

文库首页搜索指引 立即搜索

相关学习资料