excel查找技巧:单个函数在区间查找中的应用解析

news2024/10/4 3:21:52

区间取值的问题,在我们日常工作中经常会遇到,比如:销售提成、等级评定、生产标准核定、绩效考核等等,都属于此类问题,今天就给大家介绍几种常用的方式方法,旨在丰富大家知识面的同时,也可以对函数的应用拓宽一些眼界。

【数据源】先给出今天教学的源数据。建议大家在看后面解决方式之前,先思考一下你会用什么方法处理,会用几种方法处理,然后再来印证。

数据本身没有什么好说的,要求:根据B列的数值,在E列的范围条件中找到对应范围在H列的区间系数,并提取到C列计提系数中。

(本身来说,此类问题更多的是计算计提金额,我们为了更加突出提取系数的函数部分,就省略了此环节,大家记得下面的每个函数再乘以B列数值就可以得到计提金额。)

【附加知识】在给大家解决问题的方式之前,先说一点附加知识。看一下上图中F列的表达方式,在日常工作中,我们看到此类问题的条件描述大部分都会写成E列的格式。但区间的表示方式,规范的写法应该如F列的格式,由两个值组成,以逗号隔开,左边的值为最小值,右边的值为最大值,“[ ]”为包含等于,“( )”为不包含等于。无穷符号是在插入符号中输入,如下。

方法一:IF函数

图例:

C2单元格函数:

=IF(B2>=500,0.1,IF(B2>=300,5%,IF(B2>=150,3%,IF(B2>=50,1%,0))))

函数解析:

对于区间取值的问题,IF函数也许是我们最先想到的方式,也是很多同学用的最多的方式,同时它也确实是最好理解函数原理的一个。但是小函数却有大智慧,对于IF函数,我们要知道多级IF嵌套的运算顺序是从左向右进行的,第一级条件B2>=500为真(TRUE),则返回0.1,为假(FALSE)则进行第二级IF判断B2>=300,为真(TRUE)则返回5%,为假(FALSE)则进行第三级判断条件,以此类推。当某一级条件为真(TRUE)返回某个值后,函数也就不再向后运行。

所以很多同学写错了IF嵌套,就是写错了这个逻辑关系,导致返回值不对。记住这个逻辑关系一定是要么全用>号,从大到小写;要么全用<号,从小到大写!

上图就是全用<号写的IF函数,大家注意到没有,条件中的=号都是包含在次一级跳点区间中的,所以我们在函数中只使用了<号,没有使用=号。

C2单元格函数:

=IF(B2<50,0,IF(B2<150,1%,IF(B2<300,3%,IF(B2<500,5%,10%))))

方法二:VLOOKUP函数

图例:

C2单元格函数:

=VLOOKUP(B2,$G$2:$H$6,2,1)

函数解析:

VLOOKUP函数用于垂直查询,一共有四个参数,前三个我们就不多介绍了,其中第四个参数是模糊查询(TRUE)/精确查询(FALSE)。

VLOOKUP函数是一个使用率很高的函数,再绝大多数的工作环境中我们都可以使用精确查询,但是在区间取值的问题上,必须使用模糊查询。

使用VLOOKUP函数区间取值时,我们的数据源必须像G、H列那样,将数据按照“升序”的方式排列出来。当然我们也可以使用数列,同样数列的输入也须按照升序来写{0,0;50,1%;150,3%;300,5%;500,10%}。数列的问题不是今天的重点,我们以后写数组函数内容的时候再来说它。

方法三:LOOKUP函数

图例:

C2单元格函数:

=LOOKUP(B2,$G$2:$G$6,$H$2:$H$6)

函数解析:

这里我们使用了LOOKUP函数的“向量”用法。即在第一个区域(第2参数)的查询值中,返回第二个区域(第3参数)中对应的值。这个是不是比VLOOKUP函数更好理解呢?同理,和VLOOKUP函数一样,它的数据源也需要升序排列。

当然我们也可以使用LOOKUP函数的数组用法,如下:

LOOKUP函数的数组用法,是在区域的首端找到值,再返回区域末端对应的值。

LOOKUP函数相对于VLOOKUP函数(垂直查询)和HLOOKUP函数(水平查询)来说,倒是显得“全能”了一些,它可以根据行或者列来做今天的区间取值问题,如下图:

【编后语】此篇列出的内容都是常规函数区间取值的解决方法,是日常工作中最常用的方式,无论从学习难度上,还是从办公效率上来讲,大家都应该要熟练的掌握《常规函数篇》列出的内容。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/136851.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

JavaScript 变量

文章目录JavaScript 变量JavaScript 变量JavaScript 数据类型声明&#xff08;创建&#xff09; JavaScript 变量一条语句&#xff0c;多个变量重新声明 JavaScript 变量JavaScript 算数JavaScript 变量 变量是用于存储信息的"容器"。 实例 var x5; var y6; var zx…

BlocProvider add数据流程

我们看看往bloc中添加数据流程&#xff0c;以demo为例 void _incrementCounter() {_counter;BlocProvider.of<TestBloc>(context).add(LoadTestEvent(_counter));} 我们调用了BlocProvider获取对应的Bloc &#xff0c;然后调用他的add方法 void add(Event event) {asser…

【华为重启门】华为/荣耀手机一直自动重启原因解决方案(荣耀V10)

文章目录1.问题描述2.分析原因3.解决方案4.实际操作1.问题描述 荣耀V10&#xff0c;莫名其妙的、无规律的死机重启。 一开始是重启后进入紧急备份&#xff0c;无法正常开机。 之后莫名其妙可以正常开机了&#xff0c;但是总是会重启。 2.分析原因 不搜不知道&#xff0c;一…

Maven安装及配置

1.下载 Maven – Download Apache Maven 2.安装 maven压缩包解压到一个没有中文&#xff0c;空格或其他特殊字符的文件夹内即可使用。 3.配置环境变量 1.右键此电脑->属性->高级系统设置->环境变量 2.新建系统变量MAVEN_HOME 3.编辑系统变量Path&#xff0c;添…

【源码解析】断路器Hystrix使用和工作原理

断路器Hystrix使用和工作原理 介绍 在微服务架构的分布式系统中&#xff0c;众多微服务有复杂的依赖关系&#xff0c;这些依赖在某些情况下不可避免的会出现一些请求失败。当一个依赖由于延迟高出现阻塞&#xff0c;调用该依赖的服务线程就会发生排队阻塞。如果这个时候出现大…

二叉树实现及应用(C语言模拟实现可以存放任意结点的栈、队列,二叉树遍历的递归与非递归实现,附上源码和实验报告,用了自取)

XIAN TECHNOLOGICAL UNIVERSITY 目录 课程设计报告 1绪论 2课程设计目的和内容 3算法的基本思想 1 .建立二叉树结构      建立二叉树时&#xff0c;要先明确是按哪一种遍历规则输入&#xff0c;该二叉树是按你所输入的遍历规则来建立的。本实验用的先序遍历行建树。二叉树…

第六章. 图解数组计算模块Numpy—数据的相关概念和创建数组

第六章. 图解数组计算模块Numpy 6.1 数据的相关概念和创建数组 Numpy是Python数组计算&#xff0c;矩阵运算和科学计算的核心库&#xff0c;它的用途是以数组的形式对数据进行操作&#xff0c;由于Numpy是通过C语言实现的&#xff0c;所以运算速度比较快。 1. Numpy的功能&…

技术贴 | SQL 编译与执行 -parser

前言SQL 编译与执行系列技术博客将按照以下顺序分别介绍整个 SQL 执行引擎。图一 SQL 编译与执行研读流程parser 部分&#xff0c;包括词法解析和语法解析。compile 部分&#xff0c;包括语义解析以及计划的构建。optimize 部分&#xff0c;包括计划的优化。exec 部分&#xff…

十四、TCP多线程、原子类AtomicInteger、日志、枚举

tcp多线程 tcp客户端 多线程收发代码 package com.heima.test2;import java.io.*; import java.net.Socket; import java.nio.charset.Charset; import java.util.Scanner;class ClientSend implements Runnable {Socket socket;Scanner sc new Scanner(System.in);public C…

2019年数维杯国际大学生数学建模B题无人机避障问题设计规划求解全过程文档及程序

2019年数维杯国际大学生数学建模 B题 无人机避障问题设计规划 问题重述&#xff1a; 任务1&#xff1a;假设无人机在飞行过程中不受风向、湿度等外界因素的影响&#xff0c;飞行速度和拍摄角度恒定&#xff0c;无人机对一定宽度的区域进行直线飞行模式航拍。执行此航拍的飞行…

SpringBoot(一): SpringBoot的创建和使用

Spring的创建和使用1. 什么是Spring&#xff1f;2. SpringBoot的优点3. SpringBoot项目的创建3.1 使用IDEA创建3.2 使用网页创建4. 项目目录介绍和运行4.1 目录介绍4.2 项目运行4.3 输出hello world4.4 约定大于配置1. 什么是Spring&#xff1f; Spring的诞生是为了简化Java程…

Spring-boot启动失败 Unregistering JMX-exposed beans on shutdown 异常处理

目录一、异常错误二、原因三、解决方法一、异常错误 Spring-boot启动Run时&#xff0c;出现 o.s.j.e.a.AnnotationMBeanExporter - Unregistering JMX-exposed beans on shutdown 错误 *************************** APPLICATION FAILED TO START Description: The Tomcat conn…

【小程序】包与数据共享

文章目录使用 npm 包Vant WeappAPI Promise化全局事件共享MobX分包分包概念使用分包独立分包分包预下载使用 npm 包 目前&#xff0c;小程序中已经支持使用 npm 安装第三方包&#xff0c;从而来提高小程序的开发效率。但是&#xff0c;在小程序中使用npm 包有如下 3 个限制&am…

【韩顺平Linux】学习笔记3

【韩顺平Linux】学习笔记3一、文件目录指令pwd指令 ls指令cd指令mkdir指令rmdir指令touch指令cp指令rm指令mv指令cat指令more指令less 指令echo指令 head指令tail指令> 指令 >>指令ln指令history指令二、时间日期指令三、查找指令四、压缩和解压一、文件目录指令 根目…

【前端】Vue项目:旅游App-(3)TabBar:点击active效果、点击路由跳转

文章目录目标代码与过程设置active主题颜色添加点击active效果点击路由跳转效果总代码修改或新增的文件common.cssindex.csstab-bar.vue目标 添加点击active效果实现点击路由跳转效果 上一篇TabBar搭建&#xff1a;【前端】Vue项目&#xff1a;旅游App-&#xff08;2&#xff…

LVGL学习笔记12 - 复选框CheckBox

目录 1. Parts 1.1 LV_PART_MAIN 1.2 LV_PART_INDICATOR 2. 状态 3. 样式 3.1 设置字符串颜色 3.2 设置点击框外框颜色 3.3 修改点击框弧度 3.4 修改字符串与点击框的间隔 4. 事件 复选框通过lv_checkbox_create创建。一个CheckBox由一个点击框加一个Label组成。 obj1 …

Minikube Mac 安装 使用

Minikube Mac 安装 使用 环境要求 硬件要求 至少 2核 CPUs2GB 以上内存20GB 以上磁盘空间网络环境容器或虚拟机, 例如: Docker, QEMU, Hyperkit, Hyper-V, KVM, Parallels, Podman, VirtualBox, or VMware Fusion/Workstation 本机环境 Mac Pro 10.13.6 Docker 18.09.1 …

半导体行业相关术语

目录 1.晶圆&#xff08;wafer&#xff09; 2. 自动化测试设备&#xff08;ATE Automatic Test Equipment&#xff09; 3.晶盒&#xff08;Cassette&#xff09; 4. 待测设备(DUT Device Under Test) 5. 探针接口板(PIB Prober Interface Board) 6. 设备接口板(DIB D…

干货 | web自动化总卡在文件上传和弹框处理上?

在有些场景中&#xff0c;需要上传文件&#xff0c;而 Selenium 无法定位到弹出的文件框&#xff0c;以及网页弹出的提醒。这些都是需要特殊的方式来处理。input 标签使用自动化上传&#xff0c;先定位到上传按钮&#xff0c;然后 send_keys 把路径作为值给传进去.如图所示&…

【计算机网络-物理层】通信基础

文章目录1 码元、速率、波特、带宽1.1 码元1.2 波特率1.3 比特率1.4 带宽1.5 相关例题2 奈氏准则、香农定理2.1 奈氏准则&#xff08;采样定理&#xff09;2.2 香农定理2.3 相关例题3 编码方式3.1 归零编码&#xff08;RZ&#xff09;3.2 非归零编码&#xff08;NRZ&#xff09…