【文末赠书】揭秘Excel里最短的函数:N函数(提高篇-下)

公众号回复2016   下载office2016

限时半价购买链接↓↓↓

关于N函数,之前已经有两篇教程了:
【Excel函数教程】揭秘Excel里最短的函数:N函数(基础篇)
【Excel函数教程】揭秘Excel里最短的函数:N函数(提高篇-上)

今天是这个系列的最后一篇,主要分享两个问题:
N函数在降维方面的应用
VLOOKUP+N的玄幻组合

内容稍微有点难,如果学习过程中有任何不适感,可以随时离开,不算你旷课

N函数在降维方面的应用

降维是什么?

仅仅就这个概念估计很多人都是迷迷糊糊的,简单来说,数据在表格(或者公式里)的存在是有方向的!

一维数据:数据只存在于一个方向,例如单行或者单列,在公式里就是只有逗号或者分号;(后半句听不懂的话去补课吧,这涉及到数组的基础知识了)

二维数据:数据存在于两个方向,多行多列的区域,在公式里就是逗号和分号同时存在;

三维数据:二维以上的都叫多维吧,也就是多个一维或者二维同时存在,也有种理解是增加了一个工作表的维度(多表统计)

这些概念都非常抽象,大概理解意思就行了,通过一个例子来看看N函数怎么就降维了,什么情况下需要降维。

一般涉及到多维引用的公式基本都离不开OFFSET和INDIRECT这两个函数,我们以OFFSET为例进行说明:

为了便于大家理解,使用一个非常简单的数据源来进行演示,首先看看一维的情况:

使用offset引用了五个数据(1列5行,也就是高度5,宽度1的区域),求和结果是5,没有问题。不明白offset是什么的自己补课吧:

史上最弱的一篇offset函数教程,让你见识什么叫凌波微步!

继续看二维的情况:

使用offset引用的10个数据(2列5行,也就是高度5,宽度2的区域),求和结果是10,没问题。

多维的来了:

公式结果表面上看没有错误,但实际上这里的OFFSET引用了两个层面的区域:

为了便于理解这部分,将A2改为2,OFFSET的第二参数使用了数组,得到的两个区域用不同的颜色予以区分。

我们再加上N函数看看效果:

结果变成3了,这就是经过了N函数降维的效果,将不在两个层面的区域的第一个数据置于同一纬度。

当然这个例子并没有什么实际应用的价值,只是为了大家理解维度的意义。同时明白一点,经过N函数降维后,得到的只是对应区域的首个数据。

这部分内容算是非常难懂的知识了,有兴趣的朋友可以自己去搜索相关的资料,在EH的论坛里有专门讨论降维的帖子。

本文的目的只是让各位了解N函数在这种问题上面的应用方式,是不是觉得N函数不简单了,还没完呢,下面这个例子要配合N一起来展示的是一个大家非常熟悉的函数VLOOKUP,是个什么例子呢,继续看……

VLOOKUP+N的玄幻组合

实例如下图所示:求指定的多个产品在某个月的销量合计

正常情况下,这个问题不会与VLOOKUP扯上关系,这是一个多条件求和的问题,一般都是SUMPRODUCT的强项,可是有了N函数的介入,这个问题愣是被VLOOKUP搞定了(当然也有SUM的功劳)。

在这个公式中:
=SUM(VLOOKUP(N(IF({1},G2:G3)),A2:E5,4,))

VLOOKUP一开始被理所当然的写成这样:
=SUM(VLOOKUP(G2:G3,A2:E5,4,))

第一参数是两个,那么也得到两个结果,进行求和后发现,只是第一个数据,并未达到求和的目的,但是写成N(IF({1},G2:G3)就可以,这是一个神奇的组合,经过这样处理,就可以使用VLOOKUP引用得到多个结果。

是什么原理呢?

我也没法解释清楚,所以才说是玄幻组合啊……记得这个套路,需要用的时候照搬即可。

可能有朋友会问如果产品编号不是数字,例如这样的,就有问题了:

这个我倒是可以回答,因为N函数只对数字有效,这样的编号显然是文本,这时候就需要把N换成T:

好了,N函数到这就差不多该歇歇了,估计很多朋友也已经快晕倒了,因为公式太难理解啊……

(0)

相关推荐