vlookup函数练习_为什么职场要学excel函数?看这个案例演示:自动计算快递价格...

在上一篇文章里面,我们讲了如何整理完成一个规范化的表格,以便于下一步的函数计算。

62ea94279467bda170f3965d97a66590.png

最初的信息内容如图所示。

0eac0de459adbd08e22e03726ac1b56b.png

经过整理,我们得到了表2这样的规范化表格。

现在,我们就通过表2来实现快递费用自动计算,最终实现图中这样的效果:

83fb0cdce4cba81adc09af8f9c8613aa.png

第一步、制作查询表格

首先,在表1里面制作好查询表格。

表格有2个条件:目的地和重量。

为了避免使用的时候出错,我们先将2个条件分别设置数据验证。

2a74f4be49145537dc6058fc15c5b89f.png

选中B7单元格,点击“菜单栏-数据-数据验证”,在“序列”里面去选取来源,来源在表2里面的B列对应区域。

2b4b3c3a6d8c3dd99445940c956ba353.png

这样,B7单元格的目的地就实现了下拉菜单选取。

然后,B8单元格要填入重量,就必须为数字,通过数据验证,能够禁止别人输入非数字格式。

4eb1dee792d12f48cfa351a8a37e353c.png

选中B7单元格,点击“菜单栏-数据-数据验证”,在“小数”里面选中“大于”,填入“0”。

bf85a018b1b2826b46196cbad2193fbe.png

这样,只要在B8单元格输入文字,就会弹出提示框,并且要求重填。

第二步、写函数公式

一个快递的重量,需要用if函数做个判断,判断重量是否超过首重,如果没超过,就直接是首重费用;如果超过了,就应该是首重费用+续重费用。

比较麻烦的是续重费用!

我们先来看一个示例:

a74e32a3b7f8a025478541dceab7837d.png

假如快递重量为1.5KG,那么续重的重量是1.5KG-首重1KG=0.5KG。

用int函数对0.5除以1的值进行取整(这里1是续重的标准1KG),得到0。

因此续重费用应该是(0+1)*6=6(这里6是续重的价格6元),得到6。

但另外还有个问题,这些10、1、6、1数据都是变化的,是根据目的地不同而不同,而且以后也可能进行修改,所以都需要用vlookup函数进行查询引用。

e91a0a476fc554b9ec20f4977c84458f.png

图中案例公式为

=VLOOKUP("上海",B2:F32,4,0)

代表着在B列到F列的第2行和第32行这个区域内,在B列查找“上海”,返回右边第4列,也就是续重价格这一列的值,因此结果为6。末尾的参数0表示精准查询。

将这些内容综合起来,我们可以写出一个完整的函数公式。

注意:虽然这里数据很多用的是1,但考虑到这些价格标准随时可能会调整,因此不应该在函数公式里直接用1来做计算。否则下一次修改了价格标准,这个函数公式结果就出错了。

99624d85752463b2e219ecc237dec469.png

表1里的B9单元格公式为:

=VLOOKUP(B7,Sheet2!B2:F32,2,0)+IF(B8

看上去很长,别怕,我们来分解一下。

先看一下文字版的:

第一种条件下

=B7目的地的首重价格+(如果B8重量

第二种条件下

=B7目的地的首重价格+(如果B8重量>=目的地的首重重量,返回续重费用)=B7目的地的首重价格+B7目的地续重费用

续重费用的公式就是将数据全部用vlookup函数进行查询获得。

INT((B8重量-目的地的首重重量)/目的地的续重标准+1)*目的地的续重价格

不过到这一步,还没有结束。

对于数学计算这一类的问题,一定要注意各种临界值的验证。

ab3714aa11b649a8f748733858a41794.png

当B8输入1.5的时候,结果为10+6=16是正确的。

cec1d991d1b00e7837e6ab406e42c8a6.png

但是当B8输入2的时候,结果为10+12=22,是错误的。

因为2KG,其续重为1KG,应该还是10+6才对。

这里就是临界值出了问题,检查会发现,只有重量为2、3、4、5这些续重1KG的整数倍数时候,会出现多增加1个续重单位的问题。

那么,这种情况怎么办呢?

5faa6c6813c382af8cd13ccf0db083e7.png

在int函数部分,我们将B8重量-首重重量这里,再减去一个极小的数字,比如-0.00001,这样int后的结果就不是0,而是小于0,结果就不会出错了。

最终公式为

=VLOOKUP(B7,Sheet2!B2:F32,2,0)+IF(B8

608f9b4a39f216aaa48d7e6c97e4afca.png

最终,我们只需要在B7里选择目的地,在B8里输入重量,就能自动算出快递费用了。

当然,如果目的地还要精确到市区县,只要有相应的数据,制作为多级下拉菜单就可以了。

总结:这个案例的函数虽然只用到了if、vlookup、int三个函数,但由于涉及到多个查询引用及计算转换,也还是比较考验综合应用能力的,大家可以多多练习,理顺逻辑思路,提高函数处理能力。

《Excel天天训练营》

《Excel天天训练营》是加薪学院专为职场人士研发的excel课程,根据常见办公需求精选案例,从此办公不求人。

849a9c95230b7e49a3514c8f5c61509f.png

目前,课程2.0图文版本已升级完毕,体系更完整,讲解更到位,学员已突破1000人。课程分为三个篇章:第1章-提高效率(15节课)、第2章-精通函数(25节课)、第3章-美化图表(10节课),共50节内容。同时,课程2.0视频版正在更新中。

注意:购买课程之后,私信发送“333”,获取课程配套的excel案例文件,同步实操练习,学习效果更佳!另外,视频课程现已提供电脑端播放~

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

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

相关文章

蓝牙芯片排行_7月TWS 全球品牌出货量排行榜出炉

数据铸造影响力撰文 / 旭日大数据编辑 / 柏序旭日大数据公布了2020年7月全球TWS品牌销量排行榜,与上期数据相比,全球品牌七排名TOP20汰换率为15%,其中DOSS,万魔、BOSE跌出前20,广州由我,Tzumi登榜&…

project 打印的时候上面的表格和下面的图例中间有个很大的空白,这块东西怎么能去掉呢?

“打印预览”的“页面设置”里面,“页面”选项卡里的“缩放”项设为1页宽,1页高就可以了, 当然如果你的任务项比较少的话,怎么调也不容易去掉下面的空白 操作如下图(下图的任务太少,去不掉空白的&#xf…

加密机工作原理_端子机压力检测装置工作原理

上期我们介绍了端子机压力管理装置的使用常识,这期我们介绍端子机压力管理装置的工作原理,端子机压接管理装置,有单通道压力监测和双通道压力监测二种,双通道压力监测装置,一般用于双头端子压接机上,一台主…

win10解决java多版本java -version问题

电脑环境 先安装了Jdk8,后安装了jdk11.(发现Jdk11没有单独的jre,官网也不提供下载,集成在一起了) Java -version 将环境变量切换为 JDK11 后 javac -version 是 java编译环境是jdk11了,但 java -versio…

vs设计窗口不见了_碳纤维的巅峰:VS沛纳海616V3

各位朋友,你们好!欢迎大家关注XYZ腕表俱乐部。专注腕表资讯,致力于做腕表拆解测评,为大家普及分享有价值的腕表知识,真正让大家实实在在透明玩表。想了解更多,欢迎搜索:XYZ腕表俱乐部。可以让您…

CSharpGL(49)试水OpenGL软实现

CSharpGL(49)试水OpenGL软实现 CSharpGL迎来了第49篇。本篇内容是用C#编写一个OpenGL的软实现。暂且将其命名为SoftGL。 目前已经实现了由Vertex Shader和Fragment Shader组成的Pipeline,其效果与显卡支持的OpenGL实现几乎相同。下图左是常规OpenGL渲染的结果&#…

SonarQube结合IDEA实现代码检测

环境准备 1.SonarQube下载:https://www.sonarqube.org/downloads/ 建议用最新版本,SonarQube与idea的结合 需要SonarQube很多插件,需要借助idea的SonarLint 插件。 不同的SonarQube版本,有不同的插件版本 idea的SonarLint 插件…

二维小波变换_【外文文献速读】实时二维水波模拟

题目:Water surface wavelets 作者:Stefan Jeschke, TomšSkřivan, MatthiasMller-Fischer, Nuttapong Chentanez, Miles Macklin, Chris Wojtan

技术开发(委托)合同怎么写?

一直基于宁波市科技局备案合同模板签订合同,并完成科技局备案工作,成功了N次,直接分享模板,该模板通过了法务审核,财务审核,只需要批示修改相关内容即可,一份技术开发委托合同,十几分…

最常用的15个前端表单验证JS正则表达式

2019独角兽企业重金招聘Python工程师标准>>> 在表单验证中,使用正则表达式来验证正确与否是一个很频繁的操作,本文收集整理了15个常用的JavaScript正则表达式,其中包括用户名、密码强度、整数、数字、电子邮件地址(Ema…

程序员个人外包合同怎么写?

分享一份工作上经常用到的个人外包合同协议,该协议通过了法务与财务审核,兼顾甲乙双方利益,程序员接私活必备!!!! ---需要电子word版,请关注--------- 回复:个人外包合同…

rocketmq新扩容的broker没有tps_深入研究RocketMQ消费者是如何获取消息的

前言小伙伴们,国庆都过的开心吗?国庆后的第一个工作日是不是很多小伙伴还沉浸在假期的心情中,没有工作状态呢?那王子今天和大家聊一聊RocketMQ的消费者是如何获取消息的,通过学习知识来找回状态吧。废话不多说&#xf…

苏宁 11.11:仓库内多 AGV 协作的全局路径规划算法研究

本文为『InfoQ x 苏宁 2018双十一』技术特别策划系列文章之一。 1. 背景 随着物联网和人工智能的发展,越来越多的任务渐渐的被机器人取代,机器人逐渐在发展中慢慢进入物流领域,“智能叉车”,AGV(Automated Guided Vehi…

用python绘制玫瑰花的代码_python也能玩出玫瑰花!程序员的表白代码

有些情侣是异地恋,情人节想送朵玫瑰花给女朋友都困难。别担心,用Python就好了,互联网时代的恋爱神器!接下来就让我们一起来看看如何用Python变出玫瑰花的。 1、首先我们导入画图工具turtle,即import turtle 2、导入画图…

Springboot 整合 swagger

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/weixin_40254498/article/details/83622098 swagger 主要是为后端服务的接口文档,懒人必备,swagger就是一款让你更好的书写API文档的框架。 其他的框架…

Project为项目设置预算

假设项目预算10万元,如果项目完成后,花费没有超过10万元,则成本管理是成功的,如果花费了11万,则超过了预算。 预算是10万,一般目标成本设得比预算成本低,比如9.5万。在项目实施过程中&#xff…

activiti7流程设计器_变频空调器通信电路

通信电路由室内机和室外机主板两个部分单元电路组成,并且在实际维修中该电路的故障率比较高,因此单设--节进行详细说明。第三章变频空调器单元电路对比和通信电路第二节通信电路通信电路由室内机和室外机主板两个部分单元电路组成,并且在实际…

PyCharm 中为 Python 项目添加.gitignore文件

文章目录 1.安装.ignore插件 2.在项目中添加.ignore文件 1.安装.ignore插件 在pycharm编译器中,依次点击File->Setting 在跳出Setting的页面中,执行如下操作: 点击左侧的Plugins, 在搜索框中输入.ignore 点击右侧的install 点…

mysql的分页查询

为什么80%的码农都做不了架构师?>>> order by case when 的用法(实现特殊情况的排序,如leader1的排最前面): select * from m_worker_project order by CASE WHEN leader 1 THEN 100 ELSE 1000 END 项目中…

.describe() python_python的apply应用:一般性的“拆分-应用-合并”,附加详细讲解

跟aggregate一样,transform也是一个有着严格条件的特殊函数:传入的函数只能产生两种结果,要么产生一个可以传播的标量值(如np.mean),要么产生一个相同大小的结果数组。最一般化的GroupBy方法是apply,apply会将待处理的…