百度360必应搜狗淘宝本站头条
当前位置:网站首页 > 技术文章 > 正文

新函数REDUCE来了!Excel中的最强辅助,太强大了

itomcoil 2025-03-04 12:43 11 浏览

今天我们来学习下REDUCE函数的使用方法,我愿意称之为LAMBDA函数的最强辅助函数,他可以循环调用参数,累加结果,下面我们来学习下它的使用方法

一、REDUCE

REDUCE:通过将 LAMBDA 应用于每个值,并在累加器中返回总值,将数组减小为累积值。

语法:=REDUCE ([initial_value], array,lambda (x,y,计算表达式) )

第一参数:初始值,
第二参数:要循环的数组
第三参数:lambda,可以接受2个参数

REDUCE是LAMBDA函数的辅助参数,需要配合LAMBDA,上面的介绍相信很多粉丝都看不明白,下面我们通过实际的案例来具体演示下

二、案例演示

如下图,我们想要求这4个数字平方的和,就可以考虑使用下面的公式

公式:REDUCE(0,B2:B5,LAMBDA(x,y,y*y+x))

参数1:起始值0

参数2:B2:B5,需要循环的区域

参数3:LAMBDA(x,y,y*y+x)

在这里LAMBDA表示式中,X就表示起始值,Y就表示需要循环的区域,函数会将B2:B5逐个代入LAMBDA做计算

当代入数字1,x为0,y为1,1乘1加上0结果为1,LAMBDA会将结果1传回x等待下次计算
当代入数字2,x为1,y为2,2乘2加上1结果为5
当代入数字3,x为5,y为3,3乘3加上5结果为14
当代入数字4,x为14,y为4,4乘4加上16结果为30

以上就是函数的计算过,逐个遍历,将结果累加起来。

三、连接文字

公式:=REDUCE(,B2:B10,LAMBDA(x,y,x&y))

REDUCE函数不仅仅能对数字累加,还能进行文字的连接,如下图,我们就是将几个单元格中的数据连接在了单元格中。

以上就是REDUCE函数的基本用法,下面我们来上点难度,看几个工作中的实际案例

四、批量替换

公式:=REDUCE(C2,{"袋";"kg";"个"},LAMBDA(x,y,SUBSTITUTE(x,y,"")))*1

在这里我们是将单位【袋、kg、个】批量替换为了空值,最后再乘以数字1,将文本数字换换位数字格式的数字方便计算

五、批量指定替换

公式:=REDUCE(C2,F2:F4,LAMBDA(x,y,SUBSTITUTE(x,y,OFFSET(y,,1))))

我们想将中文替换为对应的英文单位,这个公式的逻辑跟案例四是一样的,关键点就是通过OFFSET来做偏移,在这里它的作用是向右移动一行,这样的话就能得到替换值来做替换了

六、同类项拆分

公式:=REDUCE(B4:C4,B5:B7,LAMBDA(x,y,VSTACK(x,IFNA(HSTACK(y,TEXTSPLIT(OFFSET(y,,1),,"、")),y))))

这个公式可以将合并同类项的表格,快速的拆分为这个公式比较的复杂,我们来简单的拆解下

1.我们需要使用TEXTSPLIT函数根据分隔符拆分

2.使用HSTACK函数在拆分结果的左侧连接上对应的班级

3.使用IFNA函数将错位值替换为对应的班级

4.使用 VSTACK来将表头连接到结果的上面即可

以上就是1行数据的转换方式,最后再使用REDUCE函数来做循环遍历即可,不过我们需要注意的是需要将表头B4:C4作为起始值,这样才能添加上表头

以上就是REDUCE函数的使用方法,大家可以动手试一下,这个函数还是非常强大的,大家可以动手试一下


如果你想要提高工作效率,不想再求同事帮你解决各种Excel问题,可以了解下我的专栏,WPS用户也能使用,讲解了函数、图表、透视表、数据看板等常用功能,带你快速成为Excel高手

相关推荐

zabbix企业微信告警(zabbix5.0企业微信告警详细)

zabbix企业微信告警的前提是用户有企业微信且创建了一个能够发送消息的应用,具体怎么创建可以协同用户侧企业微信的管理员。第一步:企业微信准备我们需要的内容包括企业ID,应用的AgentId和应用的S...

基于centos7部署saltstack服务器管理自动化运维平台

概述SaltStack是一个服务器基础架构集中化管理平台,具备配置管理、远程执行、监控等功能,基于Python语言实现,结合轻量级消息队列(ZeroMQ)与Python第三方模块(Pyzmq、PyCr...

功能实用,效率提升,Python开发的自动化运维工具

想要高效的完成日常运维工作,不论是代码部署、应用管理还是资产信息录入,都需要一个自动化运维平台。今天我们分享一个开源项目,它可以帮助运维人员完成日常工作,提高效率,降低成本,它就是:OpsManage...

centos定时任务之python脚本(centos7执行python脚本)

一、crontab的安装默认情况下,CentOS7中已经安装有crontab,如果没有安装,可以通过yum进行安装。yuminstallcrontabs二、crontab的定时语法说明*代表取...

Fedora 41 终于要和 Python 2.7 说再见了

红帽工程师MiroHroncok提交了一份变更提案,建议在Fedora41中退役Python2.7,并放弃仍然依赖Python2的软件包。Python2已于2020年1...

软件测试|使用docker搞定 Python环境搭建

前言当我们在公司的电脑上搭建了一套我们需要的Python环境,比如我们的版本是3.8的Python,那我可能有一天换了一台电脑之后,我整套环境就需要全部重新搭建,不只是Python,我们一系列的第三方...

环境配置篇:Centos如何安装Python解释器

有小伙伴时常会使用Python进行编程,那么如何配置centos中的Python环境呢?1)先安装依赖yuminstallgccgcc-c++sqlite-devel在root用户下操作:1...

(三)Centos7.6安装MySql(centos8.3安装docker)

借鉴文章:centos7+django+python3+mysql+阿里云部署项目全流程。这里我只借鉴安装MySql这一部分。链接:https://blog.csdn.net/a394268045/a...

Centos7.9 如何安装最新版本的Docker

在CentOS7.9系统中安装最新版本的Docker,需遵循以下步骤,并注意依赖项的兼容性问题:1.卸载旧版本Docker(如已安装)若系统中存在旧版Docker,需先卸载以避免冲突:sudoy...

Linux 磁盘空间不够用?5 招快速清理文件,释放 10GB 空间不是梦!

刚收到服务器警告:磁盘空间不足90%!装软件提示Nospaceleftondevice!连日志都写不进去,系统卡到崩溃?别慌!今天教你5个超实用的磁盘清理大招,从临时文件到无用软件一键搞定...

Playwright软件测试框架学习笔记(playwright 官网)

本文为霍格沃兹测试开发学社学员学习笔记,人工智能测试开发进阶学习文末加群。一,Playwright简介Web自动化测试框架。跨平台多语言支持。支持Chromium、Firefox、WebKit...

为SpringDataJpa集成QueryObject模式

1.概览单表查询在业务开发中占比最大,是所有CRUDBoy的入门必备,所有人在JavaBean和SQL之间乐此不疲。而在我看来,该部分是最枯燥、最没有技术含量的“伪技能”。1.1.背景...

金字塔测试原理:写好单元测试的8个小技巧,一文总结

想必金字塔测试原理大家已经很熟悉了,近年来的测试驱动开放在各个公司开始盛行,测试代码先写的倡议被反复提及。鉴于此,许多中大型软件公司对单元测试的要求也逐渐提高。那么,编写单元测试有哪些小技巧可以借鉴和...

测试工程师通常用哪个单元测试库来测试Java程序?

测试工程师在测试Java程序时通常使用各种不同的单元测试库,具体选择取决于项目的需求和团队的偏好。我们先来看一些常用的Java单元测试库,以及它们的一些特点:  1.JUnit:  ·描述:JUn...

JAVA程序员自救之路——SpringAI评估

背景我们用SpringAI做了大模型的调用,RAG的实现。但是我们做的东西是否能满足我们业务的要求呢。比如我们问了一个复杂的问题,大模型能否快速准确的回答出来?是否会出现幻觉?这就需要我们构建一个完善...