【发布时间】:2026-01-23 21:45:02
【问题描述】:
我有 2 个工作簿。在第一个工作簿(包含宏)中,我尝试进行 vlookup 以确定值 strCompany 是否存在于第二个工作簿(tmp_workbook)的 A 列中。
我收到以下 VBA 错误: "无法获取 WorksheetFunction 类的 Vlookup 属性)"
Dim company_exists_in_list As Variant
Dim main_workbook As Workbook, tmp_workbook As Workbook
strCompany = main_workbook.Sheets("Input ID").Cells(10 + i + b * (j - 1), 3).Value
company_exists_in_list = Application.WorksheetFunction.VLookup(strCompany, tmp_workbook.ActiveSheet.Range("A1:A100000"), 1, False)
【问题讨论】:
-
如果
strCompany在Column A中不存在,您将收到错误消息。也许尝试使用.Find,因为它可以更优雅地处理找不到匹配项的情况 -
删除
.WorkSheetFunction部分。这将允许错误传递到变量中。然后测试变量的错误。
标签: vba