核对两个表格,最常用的是Vlookup函数,但新函数Groupby才是yyds。
前两天在网上看到一个提问:
如下图所示,A表和B列格式相同,现需要根据前4列核对系统数量,并计算出差异。
分析:两个表格依据多列核对,无论用Vlookup,还是xlookup,都需要先取得两个表前四列不重复项,然后再设置查找公式,再相减计算差异。而且用Vlookup需要借用IF或Choose才能多条件查找。
而用新函数Groupby,而变得很简单。一个公式完全搞定核对
公式:
=GROUPBY(VSTACK(A!A2:D10,A2:D10),VSTACK(A!E2:E10,-E2:E10),SUM)
公式分析:
VSTACK(A!A2:D10,A2:D10)用VStack函数合并两个表格前4列作为第1个参数,也是汇总项。
VSTACK(A!E2:E10,-E2:E10)用VStack函数合并两个表格系统数量列作为第2个参数,也是计算数值项。这里很巧妙的在E2:E10前面添加-,把第2个表值变成负数,这样Groupby对两个表值汇总就变成了A表值-B表值,进而计算出差异。
至于差异行自动变色,则用了条件格式完成的
兰色说:groupby函数共有8个参数,可以实现非常强大的分类汇总和表格整理功能,目前只有office365、wps才能使用。