我正在努力让我的代码正常工作,但它仍然显示出一些错误。代码是从workbook1打开workbook2并在workbook1中插入vlookup函数,它将从workbook2中的workbook1中搜索值,代码如下:
Application.ScreenUpdating = False
Dim fNameAndPath As Variant, wb As Workbook
fNameAndPath = Application.GetOpenFilename(Title:="Wybierz plik do kontroli rabatu")
If fNameAndPath = False Then Exit Sub
Set wb = Workbooks.Open(fNameAndPath)
ThisWorkbook.Activate
Sheets("ICOS").Activate
Set lookupvalue = ThisWorkbook.Sheets("sheet1").Cells(3, 3)
Set rngLookupRange = wb.Worksheets("sheet1").Range("$A:$P")
Range("C3:C300") = Application.WorksheetFunction.VLookup(lookupvalue, rngLookupRange, 16, False)
这段代码有什么问题?显示“无法获取工作表函数类的vlookup属性”
感谢
答案 0 :(得分:0)
这里有两个问题:
lookupvalue不应该是一个对象,而应该是一个值,例如字符串,double,integer。 将相应的行更改为
lookupvalue = ThisWorkbook.Sheets("sheet1").Cells(3, 3).value
其次,Vlookup函数只返回一个值(或#N / A)。它不返回范围。所以将下一行更改为
Range("C4").value = Application.WorksheetFunction.VLookup(lookupvalue, rngLookupRange, 16, False)