乐于分享
好东西不私藏

Excel动态数组五巨头:一套公式,让报表自己长出来(附案例)

Excel动态数组五巨头:一套公式,让报表自己长出来(附案例)

在日常工作中,面对销售量翻倍需要重做需求表,物控部门提前交期造成欠料清单繁琐的情况,一张普通表格在V7版本中仅需简单调整条件便可轻松应对。这正是Excel自带的“智能员工”——动态数组函数带来的变革。

从Excel 2021和Microsoft 365开始,动态数组函数彻底改变了表格的逻辑结构。WPS最新版也已同步支持这些功能。它们让报表如同有生命般“自己长大”,无需手动刷新,极大提升工作效率。以下将通过实际场景和可复制公式,一次性讲解五大核心函数。

首先是UNIQUE函数,用于快速提取“干净”的不重复清单。例如,销售部门可以用=UNIQUE(销售表!B2:B3000)一键获得本月所有活跃客户名单。当新增客户时,结果会自动扩展,无需再手动删除重复项或使用数据透视表。此外,可以结合COUNTA统计本月客户总数:=COUNTA(UNIQUE(B2:B3000))。

FILTER函数则能根据条件“整片拎出”数据。比如,物控筛选交期少于3天且为紧急工单,只需输入=FILTER(工单表!A:F,(工单表!D:D="是")*(工单表!C:C<TODAY()+3),"暂无紧急工单")即可得到对应结果。销售也可以用类似公式筛选华东区域订单金额超过十万的订单。注意筛选区域必须与返回区域行数一致,否则会报错。还可以将去重和筛选结合,例如=UNIQUE(FILTER(客户列,金额列>100000)),直接生成百万级大客户清单。

SORT和SORTBY用于自动排序数据。例如,将仓库呆滞料按照库龄从老到新排序:=SORT(呆滞表!A:D,3,-1)。或者按金额对客户进行降序排列,不显示金额列:=SORTBY(客户名区域,金额区域,-1)。在使用过程中要留意列序号和行数匹配的问题,插入新列后排序序号可能需要调整。

SEQUENCE函数则用来批量生成序列,如连续7天日期轴:=SEQUENCE(7,1,TODAY(),1),适合制作销售日报或排班表。同样可以用它生成编号,比如库位编号A-1至A-100:= "A-" & SEQUENCE(100,1,1,1)。设置格式为日期后即可直观显示。利用动态范围,还能根据最早销售日期自动生成多天日期轴,用于自动统计每日销售额。

LET函数则是给复杂公式“起名字”,提高可读性。例如计算净需求时,传统写法繁琐,每次修改都要改三处,而用LET定义变量后只需改一处:=LET(净需求,毛需求-可用库存-在途,IF(净需求>0,净需求,0))。封装筛选+排序功能也变得简洁高效。

这五个函数共同组成了动态数组的核心工具箱,它们负责“改形状”:去重、筛选、排序、造序列;而LET则专注于“救脑子”,让公式更清晰易懂。在实际应用中,比如全自动欠料监控看板,这些技术尤为重要。

以物控日常监控工单欠料为例,以往需要耗费30分钟手动筛选、排序、复制粘贴。而借助这些函数,只需几步:用LET结合FILTER筛出欠料且交期临近的工单,再用SORT按交期排序;用UNIQUE汇总所有欠料料号,并搭配COUNTIF统计数量;利用SEQUENCE生成连续的催料日期;配合条件格式实现颜色预警。这套系统会随着源数据实时变化自动更新,无需人工干预,大幅提升效率。

掌握这五大动态数组函数,不仅能让报表自动化变得轻松自如,更能让你在工作中游刃有余。当需求发生变化时,无须破坏原有结构,只需调用合适的函数帮你完成任务。这些技术正逐步成为Excel高手必备的利器,让复杂的数据处理变得简单流畅。