专业编程基础技术教程

网站首页 > 基础教程 正文

Excel数组公式与自动溢出 excel数组公式与自动溢出的区别

ccvgpt 2024-10-18 04:55:42 基础教程 39 ℃

数组与溢出

引用:在公式中输入其他单元格的坐标把该单元格的值引入到公式中。

这是Excel中最基本的概念,例如在C1单元格中引用A1单元格数据:

Excel数组公式与自动溢出 excel数组公式与自动溢出的区别

=A1

如果引用的对象不是一个单元格,而是一个数据区域呢:

=A1:A5

这便是一个最简单的数组公式,数据区域A1:A5等同于一个数组,公式返回的结果也是一个数组。

很明显,把这数组中的5个值全部放在C1中过于拥挤,于是便溢出到相邻单元格显示,这便是自动溢出,Excel2019以上的版本才具备该功能。

如果相邻单元格中已经有数据,则报错”#溢出”,且自动溢出失败。


老函数的数组用法

数组很早之前就存在(具体多早也懒得去求证了,大概古时候吧),当时还没有自动溢出功能来配合,所以即便是公式返回一个数组也无法一次性正常显示,更多用于公式的中间计算,最后只返回一个结果的情况,公式的运算过程全靠脑补,那叫一个抽象。而且公式写完还要按组合键(Ctrl+Shift+Enter)生效。

所以古时候会数组公式的人是什么概念呢,差不多同时会独孤九剑,吸星大法,降龙十八掌,葵花点穴手……这样子。

有了溢出的加持,普通用户也能轻松拿捏数组公式。

像下图这样一个简单乘法计算可以直接引用2个数组相乘:

=B2:B9*C2:C9

再比如要计算销售额大于1000的水果数量,有了数组公式就可以把一些中间过程包含在公式中,而不用展示出来:

=IF(B2:B9*C2:C9>1000,1,"")

IF判断,销售额大于1000返回1,否则返回空。

其中1的数量就是满足条件的项,SUM求和即可:

=SUM(IF(B2:B9*C2:C9>1000,1,""))

绝大部分的早期版本函数都像IF一样可以结合数组来运用,当然并没有逐一测试(Excel总共500多个函数),微软官方网站上也没有特别说明。

就VLOOKUP,SUMIFS,COUNTIFS,MATCH……这些常用函数来看,数组和溢让它们枯木逢春,工作效率成倍增长。


新的数组函数

这里说的新大致是2021版之后推出的函数。

很多新函数的功能就是基于数组定义的,它们的应用对象和返回结果都是数组。

FILTER:筛选区域或数组

=FILTER(A:A,B:B>300)

筛选的对象是数组,筛选的结果也是数组。

SORT:对数组或范围进行排序

=SORT(A2:B9,2,-1)

排序的对象肯定不会是单个单元格,返回的结果也必定是数组。


总而言之,数组公式和溢出将给我们的数据处理带来极大便利。

最近发表
标签列表