簡體   English   中英

外部工作簿中的VBA vlookup

[英]VBA vlookup in external workbook

我正在嘗試使我的代碼正常工作,但仍顯示一些錯誤。 該代碼將從工作簿1打開工作簿2,並在工作簿1中插入vlookup函數,該函數將在工作簿2的范圍內從工作簿1搜索值,代碼如下:

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)

這段代碼有什么問題? 顯示為“無法獲取worksheetfunction類的vlookup屬性”

謝謝

這里有兩個問題:

lookupvalue不應是對象,而應是值,例如字符串,double,integer。 將相應的行更改為

lookupvalue = ThisWorkbook.Sheets("sheet1").Cells(3, 3).value

其次,Vlookup函數僅返回一個值(或#N / A)。 它不返回范圍。 所以將下一行更改為

Range("C4").value = Application.WorksheetFunction.VLookup(lookupvalue, rngLookupRange, 16, False)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM