vba宏以使用vlookup

时间:2019-09-03 18:33:02

标签: vba vlookup

我正在尝试使用Excel中的vba宏和vlookup获取值。预期值为“ hiveCatalog”表中的值,但实际结果为“ N / A”

当我在excel中尝试正常的vlookup时,我确实获得了预期的值。

下面是代码-编写该代码以使用另一张工作表中的值更新第一张工作表中的特定列。

Sub **addVlookUpColumn**()

 Dim Row As Long
 Dim Clm   As Long
 Dim Sheet1 As Worksheet, Sheet2 As Worksheet

 Set Sheet1 = ThisWorkbook.Worksheets("Attributesstagingdirectload")
 Set Sheet2 = ThisWorkbook.Worksheets("hiveCatalog")

Table1 = Sheet1.Range("A2:A11000")
Table2 = Sheet2.Range("A3:A11000")
Row = Sheet1.Range("D2").Row
Clm = Sheet2.Range("D2").Column

For Each cl In Table1
 Sheet1.Cells(Row, Clm) = Application.VLookup(c1, Table2, 1, False)
  Row = Row + 1
Next cl

结束子

让我知道我要去哪里了

下图包含工作表和工作表名称的列标题 enter image description here

1 个答案:

答案 0 :(得分:0)

也许您需要设置table2的位置

如果hiveCatalog是表所在的位置,则可以尝试一下。

Sheet1.Cells(Row, Clm) = Application.VLookup(Sheet1.Cells(Row, Clm) = WorksheetFunction.VLookup(c1, Worksheets("hiveCatalog").Table2, 1, False))