最全的VLOOKUP应用教程

VLOOKUP是Excel中最常用的函数之一,它可以让我们在一个表格中查找指定值,并返回与该值匹配的另一个单元格中的内容。
在这篇文章中,我们将深入探讨VLOOKUP的使用方法,从而为您提供一份史上最全的VLOOKUP应用教程。
第一部分:VLOOKUP函数的基本概念
VLOOKUP函数的全称是vertical lookup,即垂直查找。它的语法如下:
=VLOOKUP(lookup_value, table_array, col_index_num, [range_lookup])
其中:
lookup_value:要查找的值,可以是一个数值、一个文本字符串或一个引用。
table_array:要进行查找的范围,通常是一个包含数据的表格或区域。
col_index_num:要返回的值所在列的索引号。例如,如果您想返回查找值右侧的第一列数据,则col_index_num为2。
range_lookup:可选参数,用于指定查找方式。如果设置为TRUE或省略,则会进行近似匹配;如果为FALSE,则进行精确匹配。
第二部分:VLOOKUP函数的具体应用
简单的VLOOKUP函数使用
假设您有一个包含商品价格的表格,如下所示:
商品名称 价格
商品A 10
商品B 20
商品C 30
商品D 40
如果您想知道商品B的价格,可以使用以下公式:
=VLOOKUP("商品B", A2:B5, 2, FALSE)
其中,"商品B"是要查找的值,A2:B5是要进行查找的表格范围,2表示要返回的值所在列的索引号,FALSE表示进行精确匹配。执行该公式后,将返回20这个结果。
使用VLOOKUP函数进行条件筛选
有时候,我们需要使用VLOOKUP函数来根据某些条件筛选数据。例如,在以下表格中,我们想要找出所有城市为“纽约”的员工:
姓名 城市 工资
张三 纽约 5000
李四 伦敦 6000
王五 纽约 7000
赵六 上海 8000
钱七 新加坡 9000
可以使用以下公式:
=VLOOKUP("纽约", A2:C6, 2, FALSE)
执行该公式后,将返回所有城市为“纽约”的员工及其对应的工资。
使用VLOOKUP函数进行近似匹配
如果需要进行近似匹配,可以将range_lookup参数设置为TRUE或省略。例如,在以下表格中,我们想要查找与21岁最接近的学生姓名:
姓名 年龄
张三 20
李四 22
王五 24
赵六 18
钱七 21
可以使用以下公式:
=VLOOKUP(21, A2:B6, 1, TRUE)
执行该公式后,将返回钱七这个结果,因为21岁与他的年龄最接近。
使用VLOOKUP函数进行表格联合
如果您有多个表格,并且想要将它们联合起来,可以使用VLOOKUP函数实现。例如,在以下表格中,我们有两个表格,一个包含员工姓名和城市,另一个包含城市和税率:
姓名 城市
张三 纽约
李四 伦敦
王五 纽约
赵六 上海
钱七 新加坡
城市 税率
纽约 10%
伦敦 15%
上海 12%
新加坡 7%
我们可以使用以下公式将这两个表格联合起来:
=VLOOKUP(B2, E2:F6, 2, FALSE)
其中,B2是要查找的城市名称,E2:F6是包含城市和税率的表格范围,2表示要返回的值所在列的索引号,FALSE表示进行精确匹配。
执行该公式后,将返回纽约这个结果,因为张三和王五都来自纽约,而纽约的税率是10%。
第三部分:VLOOKUP函数的常见错误及解决方法
如果VLOOKUP函数无法找到匹配的值,则会返回#N/A错误。例如,如果您使用以下公式查找表格中不存在的商品:
=VLOOKUP("商品E", A2:B5, 2, FALSE)
则将返回#N/A错误。要解决此问题,您需要确保要查找的值确实存在于您指定的表格范围内。
如果您指定的表格范围无效,则会出现#REF!错误。例如,如果您使用以下公式:
=VLOOKUP("商品B", A2:B8, 2, FALSE)
其中,表格范围包括A2:B5和A7:B8,但中间的A6:B6被排除了,导致表格范围无效,就会出现#REF!错误。要解决此问题,您需要确保指定的表格范围是有效的。
#VALUE!错误
如果您使用的值不是文本字符串或数值类型,则会出现#VALUE!错误。例如,如果您使用以下公式:
=VLOOKUP(D2, A2:B5, 2, FALSE)
其中,D2包含一个日期值,而不是文本字符串或数值类型,则会出现#VALUE!错误。要解决此问题,您需要确保使用的值是文本字符串或数值类型。
第四部分:VLOOKUP函数的高级技巧
使用VLOOKUP和IF函数进行条件筛选
有时候,我们需要根据多个条件筛选数据。例如,在以下表格中,我们想要找到所有城市为“纽约”且工资大于6000的员工:
姓名 城市 工资
张三 纽约 5000
李四 伦敦 6000
王五 纽约 7000
赵六 上海 8000
钱七 新加坡 9000
可以使用以下公式:
=IF(VLOOKUP("纽约", A2:C6, 2, FALSE)="纽约", IF(VLOOKUP("纽约", A2:C6, 3, FALSE)>6000, "符合条件", ""), "")
其中,第一个VLOOKUP函数用于查找城市为“纽约”的员工,第二个VLOOKUP函数用于查找他们的工资,IF函数用于判断是否符合条件。
执行该公式后,将返回王五这个结果,因为他符合所有条件。
使用VLOOKUP和INDEX函数进行表格联合
如果您需要将多个表格联合起来,并且需要返回多列数据,可以使用VLOOKUP和INDEX函数结合使用。
例如,在以下表格中,我们有两个表格,一个包含员工姓名和城市,另一个包含城市和税率:
姓名 城市
张三 纽约
李四 伦敦
王五 纽约
赵六 上海
钱七 新加坡
城市 税率 收入
纽约 10% 8000
伦敦 15% 9000
上海 12% 10000
新加坡 7% 11000
我们想要查找每个员工所在城市的税率和收入,可以使用以下公式:
=INDEX(G2:I6, MATCH(B2, G2:G6, 0), 2)
其中,G2:I6是包含城市、税率和收入的表格范围,MATCH函数用于查找员工所在城市的位置,INDEX函数用于返回税率和收入数据。
执行该公式后,将返回纽约这个结果,因为张三和王五都来自纽约,而纽约的税率是10%,收入是8000元。
第五部分:VLOOKUP函数的总结
通过本教程,我们已经了解了VLOOKUP函数的基本概念、具体应用、常见错误及解决方法和高级技巧。无论您是初学者还是专业人士,
都可以在这份史上最全的VLOOKUP应用教程中找到自己所需的知识点。
本文原文来自:薪火数据 最全的VLOOKUP应用教程 (datainside.com.cn)
最全的VLOOKUP应用教程的更多相关文章
- .Net魔法堂:史上最全的ActiveX开发教程——ActiveX与JS间交互篇
一.前言 经过上几篇的学习,现在我们已经掌握了ActiveX的整个开发过程,但要发挥ActiveX的真正威力,必须依靠JS.下面一起来学习吧! 二.JS调用ActiveX方法 只需在UserContr ...
- .Net魔法堂:史上最全的ActiveX开发教程——自动更新、卸载篇
一.前言 B/S模式的特点之一,客户端版本升级相对简单.快捷,适合产品的快速迭代.而ActiveX组件的自动更新同样也继承了这一优点.下面我们一起来了解吧! 二.二话不说更新ActiveX 1. 设置 ...
- .Net魔法堂:史上最全的ActiveX开发教程——部署篇
一.前言 接<.Net魔法堂:史上最全的ActiveX开发教程——发布篇>,后我们继续来部署吧! 二. 挽起衣袖来部署 ActiveX的部署其实就是客户端安装ActiveX组件,对未签 ...
- .Net魔法堂:史上最全的ActiveX开发教程——发布篇
一. 前言 接着上一篇<.Net魔法堂:史上最全的ActiveX开发教程——开发篇>,本篇讲述如何发布我们的ActiveX. 二.废话少讲,马上看步骤! 1. 打包 C#开发的Activ ...
- .Net魔法堂:史上最全的ActiveX开发教程——开发篇
一.前言 在设计某移动内部自动化运维平台时,经综合考虑终端机性能和功能需求等因素后,决定采用B/S模式,并且浏览器通过ActiveX组件实现与服务器Agent作P2P的通讯.好处,整个平台以网页形式存 ...
- 全网最全ASP.NET MVC 教程汇总
全网最全ASP.NET MVC 教程汇总 MVC架构已深得人心,微软也不甘落后,推出了Asp.net MVC.小编特意整理博客园乃至整个网络最具价值的MVC技术原创文章,为想要学习ASP.NET MV ...
- bootstrap-typeahead 自动补全简单的使用教程
参考链接: 参考1 : https://segmentfault.com/a/1190000006036166参考2 : https://blog.csdn.net/u010174173/articl ...
- 狗鱼IT教程:推介最强最全的Spring系列教程
Spring是一个开源框架,Spring是于2003 年兴起的一个轻量级的Java 开发框架,由Rod Johnson创建. 简单来说,Spring是一个分层的JavaSE/EEfull-stack( ...
- 自学MVC看这里——全网最全ASP.NET MVC 教程汇总(转)
自学MVC看这里——全网最全ASP.NET MVC 教程汇总 MVC架构已深得人心,微软也不甘落后,推出了Asp.net MVC.小编特意整理博客园乃至整个网络最具价值的MVC技术原创文章,为想要 ...
- [整理]Node入门 » 一本全面的Node.js教程 - Demo实践所遇到的问题
花了一个上午看完[转载]Node入门 » 一本全面的Node.js教程 根据里面的Demo自己手动实现过程中还是遇到了些问题,特整理在此. <1>.由于node.msi安装包已经自动添加了 ...
随机推荐
- openssh傻瓜式一键自动化更新脚本(ubuntu系统)
鉴于openssh升级太过麻烦,这里自制了一个openssh自动化升级脚本,以root权限一键运行脚本即可: sh openssh-update.sh 注意:这里只使用于ubuntu系统,centos ...
- VMware中的虚拟机Debian10的服务器配置,使主机(win10)能够通过本地域名(如www.xxx.com)访问该服务器
VMware中的虚拟机Debian10的服务器配置,使主机(win10)能够通过本地域名(如www.xxx.com)访问该服务器 安装过程 下载debian-10.13.0-amd64-DVD-1.i ...
- [Pwn之路]根据所给库,获得远程同环境——使用patchelf的正确姿势
原文:https://www.freebuf.com/sectool/366854.html 存自己这里方便看. 0x00 前言 如何修改本地pwn文件和题目所给环境一致,从而进行调试,这是从学习堆开 ...
- Mysql高级8-触发器
一.触发器 触发器是与表有关的数据库对象,指在insert/update/delete之前或者之后,触发并执行触发器中定义的sql语句集合,触发器的这种特性可以协助应用在数据库端确保数据的完整性,日志 ...
- 2.go语言基础类型漫游
本篇前瞻 本篇是go语言的基础篇,主要是帮助大家梳理一下go语言的基本类型,注意本篇有参考go圣经,如果你有完整学习的需求可以看一下,另外,go语言的基本类型比较简单,介绍过程就比较粗暴. 基本类型 ...
- 小红书获得小红书笔记详情 API 返回值说明
item_get_video-获得小红书笔记详情 注册开通 smallredbook.item_get_video 公共参数 名称 类型 必须 描述 key String 是 调用key(必须以 ...
- Solidity-变量和数据类型[复合类型_1]
复合类型的数据包括:array(数组).struct(结构体)和mapping(映射),其中array和struct也称为引用类型. 复合类型 数组(array) 数组(array)是一种用于存储相同 ...
- ES 2023新特性速解
ES 2023新特性速解 一.新增数组方法 操作数组的方法 Array.prototype.toSorted(compareFn) //返回一个新数组,其中元素按升序排序,而不改变原始数组. Arra ...
- 多租户基于Springboot+MybatisPlus实现使用一个数据库一个表 使用字段进行数据隔离
多租户实现方式 多租户在数据存储上主要存在三种方案,分别是: 1. 独立数据库 即一个租户一个数据库,这种方案的用户数据隔离级别最高,安全性最好,但成本较高. 优点:为不同的租户提供独立的数据库,有助 ...
- ReactPortals传送门
ReactPortals传送门 React Portals提供了一种将子节点渲染到父组件以外的DOM节点的解决方案,即允许将JSX作为children渲染至DOM的不同部分,最常见用例是子组件需要从视 ...