vba 中的 vlookup 函数
我们将通过示例介绍如何在 vba 中使用 vlookup。
在 vba 中使用 vlookup() 函数
在 excel 中,我们可以使用 vlookup() 函数在数组中查找一个值并从另一列返回其可比较的值。我们要查看的值应该存在于第一列中。
我们还必须指出我们的要求,无论我们想要完美匹配还是最接近价值的匹配。我们可以使用工作表访问 vlookup。
语法:
# vba
vlookup(search_value,range,returnindex_num,[lookuprange])
search_value 表示我们要搜索的值。range 是我们正在处理的范围,returnindex_num 是我们想要返回值的列号,lookuprange 表示匹配是完美的还是接近的。
lookuprange 有两种可能性,可以是 true 或 false,或 0 或 1。
代码:
#vba
application.worksheetfunction.vlookup(search_value,range,returnindex_num,[lookuprange])
让我们举个例子,并尝试从中找到一些数据。我们的数据包含自由职业者的 id、姓名和提交的项目。

如果我们要搜索由具有 id 4 的自由职业者完成的项目,我们必须使用 vba 中的 vlookup() 函数找到它们。
首先,我们通过按 alt f11 键打开 vba 编辑器,然后从 insert > module 创建一个新模块。接下来,我们创建一个新的子 lookforproj() 并为 freelancer_id 和 projects completed 分配变量。
我们还将设置我们想要找到自由职业者的范围。
代码:
#vba
sub lookforproj()
dim freelancer_id as long
dim projects as long
freelancer_id = 4
set newrange = range("a2:c6")
projects = application.worksheetfunction.vlookup(freelancer_id, newrange, 3, false)
msgbox "freelancer with id: " & freelancer_id & " completed " & projects & " projects"
end sub
输出:

让我们再举一个例子。考虑包含产品名称及其销售额的数据,并假设我们已将这些数据添加到列 b 和 c 中。
我们想通过使用 vlookup() 函数来搜索产品的销售数量。首先,让我们从 insert > module 创建一个新模块并创建一个新子 lookforsales()。
我们将为 product_id 和 sales 分配变量,并设置我们想要找到自由职业者的范围。
代码:
# vba
sub lookforsales()
dim product_id as long
dim sales as long
product_id = 2
set newrange = range("a2:c6")
sales = application.worksheetfunction.vlookup(product_id, newrange, 3, false)
msgbox "product with id: " & product_id & " sold " & sales & " times"
end sub
输出:

转载请发邮件至 1244347461@qq.com 进行申请,经作者同意之后,转载请以链接形式注明出处
本文地址:
相关文章
发布时间:2023/03/19 浏览次数:627 分类:vba
-
本教程演示了如何在 vba 中使用具有多个条件的自动过滤器。
发布时间:2023/03/19 浏览次数:383 分类:vba
-
本教程演示如何在 vba 中设置工作表。
