Excel学习笔记:P16-VLOOKUP函数与绝对参照设定


一、VLOOKUP函数

现在我有如下一个记录学生成绩的表格,我想输入学生的学号,直接输出学生的姓名、成绩等信息。
在这里插入图片描述


分析:假如现在我想查询学号为103的学生的平均成绩,一般我们都会表格的最左列查找他的学号,找到之后再从这一行找到他的平均成绩。这个 “L” 型的搜寻思路就是VLOOKUP函数的运作原理。
在这里插入图片描述


现在我们来实际应用VLOOKUP函数,如图所示,我们输入学生的学号,要直接输出学生的姓名、平均成绩和成绩等级。具体操作步骤如下图所示:
在这里插入图片描述

二、相对参照与绝对参照

2.1 相对参照与绝对参照

什么时候使用模糊查询呢?比如说要查询学生的成绩等级,而在等级表中没有75这个数值,我们就可以使用模糊比对这个功能,将75归类在70分对应的等级。(使用模糊比对时,使用的表格必须采用递增的顺序进行排列)
在这里插入图片描述


具体操作流程为:
①查询的关键字为总平均成绩所在单元格,因此这里应为J3。
②查询范围为M和N列的分数区间表,因此这里为M3:N7。
③查询结果为成绩的等级,在第二列,因此这里为2。
④因为要开启模糊查询,因此第四个参数为1(TRUE)。


具体效果如下图所示:

在这里插入图片描述


可以发现,成绩这一栏输入公式并下拉后,出错,具体原因如下:
在求平均成绩时,我们把函数往下复制,函数的位置参数随着单元格位置的更改而自动更新。这个特性在Excel中称为相对参照,我们以AVERAGE函数为例,如下图所示:

在这里插入图片描述
在这里插入图片描述


在使用VLOOKUP时,相对参照这一特性也是存在的。由于这一特性的存在,导致等级表也会跟着下移。
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述


为解决此问题,我们需要使用绝对参照。直观地说,就是将函数涉及的表格范围锁定在原地。锁定的方法很简单,只需将函数中涉及的表格范围参数选中,按下F4就行。此时涉及的表格范围参数周围会出现 “$”,代表此时涉及的表格范围已经转换为绝对参照了。
在这里插入图片描述
在这里插入图片描述

2.2 VLOOKUP函数与IF函数对比

①VLOOKUP函数更加简洁
在这里插入图片描述


②使用VLOOKUP函数时,如果要修改等级表的分数区间,我们不用去修改同学的成绩公式,只需在等级表中修改就行。

2.3 绝对参照的应用

在将姓名的VLOOKUP函数往下拖移时,也得考虑表格的绝对参照。即涉及的表格应该锁定在原来的位置。因为不管VLOOKUP函数复制到底下的哪一个储存格,我们依然得使用同一个学号栏作为关键字,并且在同一个资料范围进行查询。
在这里插入图片描述


如果想界面简洁,可以选中右边不想显示的表格,右键,点击隐藏。
在这里插入图片描述


若要取消隐藏,选中隐藏的那一列,右键,取消隐藏。
在这里插入图片描述


注:目前这个表格有一些问题,比如我输入一个不存在的学号,或者学号栏清空,地下仍然会显示错误代码。这个问题就留到下一篇博客记录解决办法。
在这里插入图片描述
在这里插入图片描述

  • 0
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
Excel中,VBA是一种编程语言,可以用来自动化执行一系列操作。如果要通过VBA来调用VLOOKUP函数实现动态查询,我们可以按照以下步骤进行操作: 1. 打开VBA编辑器:在Excel中按下Alt+F11键,即可打开VBA编辑器窗口。 2. 在VBA编辑器中插入新的模块:在"插入"菜单中选择"模块",即可在项目资源管理器中创建一个新的模块。 3. 编写VBA代码:在新的模块中输入以下代码,用于调用VLOOKUP函数实现动态查询。 ```vba Function VLOOKUP_Dynamic(LookupValue As Range, LookupRange As Range, ColumnIndex As Integer) As Variant Dim Result As Variant Result = Application.WorksheetFunction.VLookup(LookupValue, LookupRange, ColumnIndex, False) VLOOKUP_Dynamic = Result End Function ``` 4. 保存并关闭VBA编辑器:保存VBA代码,然后关闭VBA编辑器窗口回到Excel工作表。 5. 在单元格中调用VBA函数:在Excel工作表中选择一个单元格,在函数栏中输入"=VLOOKUP_Dynamic(要查找的值, 查找范围, 返回列索引)",并按下回车键。其中,"要查找的值"是要动态查询的值,"查找范围"是要进行查询的范围,"返回列索引"是要返回的列号或列索引。 通过以上步骤,我们可以通过VBA调用VLOOKUP函数实现动态查询。每当单元格中的值发生变化时,VLOOKUP_Dynamic函数将会重新计算并返回相应的查询结果。这种方法可以节省时间和手动操作的复杂性,提高查询的效率和准确性。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

知初与修一

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值