如何在vba中使用xlookup(附示例)


您可以使用以下基本语法通过 VBA 执行 XLOOKUP:

 Sub Xlookup()
    Range(" F2 ").Value = WorksheetFunction.Xlookup(Range(" E2 "), Range(" A2:A11 "), Range(" C2:C11 "))
End Sub

此特定示例在A2:A11范围内的单元格E2中查找值,并在C2:C11范围内查找匹配值,然后将结果分配给单元格F2

以下示例展示了如何在实践中使用此语法。

示例:如何在 VBA 中使用 XLOOKUP

假设我们在 Excel 中有以下数据集,其中包含有关各种篮球运动员的信息:

假设我们要在数据集中搜索球队名称“Kings”,并在助攻列中返回相应的值。

我们可以创建以下宏来执行此操作:

 Sub Xlookup()
    Range(" F2 ").Value = WorksheetFunction.Xlookup(Range(" E2 "), Range(" A2:A11 "), Range(" C2:C11 "))
End Sub

当我们运行这个宏时,我们会收到以下输出:

该宏正确地为国王队返回了3 次助攻。

如果我们更改单元格E2中的团队名称,然后再次运行宏,它将正确找到新团队名称的帮助器值。

例如,假设我们将球队名称更改为“Warriors”并再次运行宏:

该宏正确地为勇士队返回了4 次助攻。

请注意,您还可以向Xlookup函数添加可选的第四个参数,以指定未找到匹配项时应显示的值。

例如,您可以使用以下宏来运行 XLOOKUP 函数,如果未找到匹配项,则返回“None”:

 Sub Xlookup()
    Range(" F2 ").Value = WorksheetFunction.Xlookup(Range(" E2 "), Range(" A2:A11 "), Range(" C2:C11 "), "None")
End Sub

请随意将“None”替换为您想要显示的任何值。

其他资源

以下教程说明如何在 VBA 中执行其他常见任务:

VBA:如何使用索引匹配
VBA:如何使用 VLOOKUP
VBA:如何从另一个工作表使用 VLOOKUP

添加评论

您的电子邮箱地址不会被公开。 必填项已用*标注