当前位置:首页 > 办公 > Excel教程 > 正文内容

INDEX函数,给公式提供数组

酷网2周前 (10-07)Excel教程15

INDEX函数虽然可以生成数组,但如果不用数组公式,似乎只能返回其生成的数组中的第一个元素。然而,可以使用INDEX函数来给公式提供数组。例如:

=SUM(INDEX(A1:A10,N(IF(1,{1,4,8}))))

将计算单元格A1、A4和A8的和。

下面的公式也可以得到相同的结果:

=SUM(INDEX(A1:A10,N(INDEX({1,4,8},,))))

可以将其扩展到二维单元格区域:

=SUM(INDEX(A1:C10,N(IF(1,{1,4,8})),N(IF(1,{1,2,3}))))

计算单元格A1、B4和C8的和,即:

=SUM(A1, B4, C8)

此外,可以采取转置其中一个数组常量的标准技术来生成更多不同的结果:

=SUM(INDEX(A1:C10,N(IF(1,{1,4,8})),N(IF(1,{1;2}))))

得到的结果与下面的公式相同:

=SUM(A1, A4, A8, B1, B4, B8)

甚至生成我们通常可能会采用OFFSET函数来生成的数组:

=SUM(INDEX(A1:C10,N(IF(1,{1,2,3})),N(IF(1,{1;2;2;3}))))

得到的结果与下面的公式相同:

=SUM(SUBTOTAL(9,OFFSET(A1,,{0,1},3,2)))

实际上等价于:

=SUM(A1:B3) + SUM(B1:C3)

当然,上述内容只是举例,实际上可以通过很多方法来实现上述结果。最关键的是,通过这些例子发现了有用的技术,即可以使用INDEX函数生成多个返回值。不像OFFSET函数,其第一个参数必须是对工作表中实际单元格区域的引用,INDEX函数可以接受和处理其引用的数组,该数组由公式中其他函数生成的值组成。

并且,这种强制返回多个值的技术的使用不限于INDEX函数。例如,试图找到A1:A10中第一次出现“A”、“B”和“C”所对应的相同行中B1:B10的最大值,如果使用公式:

=MAX(VLOOKUP({“A”,”B”,”C”},A1:B10,2,0))

不一定会得出正确的结果,原因是Excel会将该公式转换为:

=MAX(VLOOKUP(“A”,A1:B10,2,0))

也就是说,传递给VLOOKUP函数的数组中的3个元素仅第1个元素被处理。

然而,使用上文所解的强制生成多个值的技术,其公式为:

=MAX(VLOOKUP(T(IF(1,{“A”,”B”,”C”})),A1:B10,2,0))

可以得到正确的结果,如下所示。

扫描二维码推送至手机访问。

版权声明:本文章来源于互联网,由八酷网收集发布,如需转载请注明出处。

本文链接:https://www.i8ku.com/2021/39490.html

分享给朋友:

相关文章

excel自定义枚举常量

excel自定义枚举常量

VBA提供了一些内置枚举常量,例如MsgBox函数的buttons参数成员vbOkOnly、vbOkCancel等,可以在程序中方便使用,并且这些常量可读性好,便于程序维护。当然,你可以创建自已的枚举常量,用于自已的代码...

SUMIF函数基本用法解析

SUMIF函数基本用法解析

SUMIF函数是使用频率很高的函数,通常用于对区域中符合指定的单个条件的值求和。 她只有3个参数,看起来像清纯的少女: 语法是:=SUMIF(range,criteria,sum_range) =SUMIF(条件区域,指...

优化师常用的4个Excel函数,解决90%数据分析问题!

优化师常用的4个Excel函数,解决90%数据分析问题!

推广的关键在于成本控制,很多朋友经常会问我如何去做数据分析,也有不少朋友会问我有没有数据分析类的表格能够更方便有效的去做数据分析。 毕竟推广数据里边没有多么复杂的数据源,所以下面讲的函数方法,建议大家看完先收藏,然后拿出...

怎么在Excel中创建数据透视表

数据透视表是Excel中的交互表,可以让用户分组并整合一大堆数据,使之变成易读易分析的简略表格形式。通过这种表,可以分类、计数并计算总数,很多电子数据表软件都可以做出这种表。这个Excel功能的一大益处就是可以通过它来重...

excel图表计算完成销售计划的产品数量与总销量

excel图表计算完成销售计划的产品数量与总销量

问题情境 如下样表: 各种产品销售量,既有完成销售计划的,也有没完成计划的。 要求统计: 1、完成计划的产品数; 2、完成计划的产品销售总量。 公式实现1、完成计划的产品数 在D5输入公式: =COUNTIF(B2:B...

怎么汇总连续多表相同单元格的销售额?

怎么汇总连续多表相同单元格的销售额?

工作表1、2、3、4是连续的4个工作表,如何求得每个表B2:B9单元格合计金额之和?   图51‑1 如何汇总连续多表相同单元格的销售额 1解决方案 使用连续多表三维引用求和。 2操作方法步骤1 在E2单元格输...

发表评论

访客

◎欢迎参与讨论,请在这里发表您的看法和观点。