我有一个主要的excel工作簿(1),包含许多表但包含相同的列; productnumber ________名_______姓_______价
xxx
有另一个包含列的工作簿(2); productnumber ________城市_______公司_______价
我尝试了什么?
我在工作簿1中有10000个产品,在工作簿2中有500个产品,所以如果我通过查找其他工作表中的“productnumber”在(xxx)单元格上使用VLOOKUP函数,我会在某些单元格中出现“Na”错误由于每日更新的工作簿中缺少足够的产品编号(2)
第二个工作簿(2)每天都在更新,我只想将每日价格复制并粘贴到我的主要工作簿(1)和
最简单的方法是什么?我如何使用VBA来做到这一点?哪些代码可以帮到我?
谢谢
答案 0 :(得分:0)
如果没有足够的有关对象名称的信息,请尝试将此工作代码调整为您的姓名:
Sub refreshPrices()
Dim cel As Range, wbNewPrices As Workbook, v
Set wbNewPrices = Workbooks.Open("C:\SO\newPrices.xlsm")
For Each cel In ThisWorkbook.Sheets(1).Range("Table1[productnumber]")
v = Application.VLookup(cel.value, wbNewPrices.Sheets(1).Range("Table1"), 4, 0)
If Not IsError(v) Then cel.Offset(, 3).value = v
Next
wbNewPrices.Close False
End Sub