【问题标题】:VLOOKUP for different sheets不同工作表的 VLOOKUP
【发布时间】:2017-07-07 21:51:07
【问题描述】:

我在Sheet1“B”列中有值,该值将在Sheet2中从“A到K”列进行vlookup,并复制Sheet2的相应C列值并将其粘贴到Sheet1的E列中。

我试过下面的代码,但它显示错误为

运行时错误“1004”: 无法获取工作表函数类的 Vlookup 属性。

Sub vlook_up()
  For i = 2 To 11
       Cells("D" & i).Value = WorksheetFunction.VLookup(Sheets("Sheet1").Range("B" & i), Sheets("Sheet2").Range("A1:K500"), 3, 0)
  Next i
End Sub

【问题讨论】:

    标签: vba excel error-handling


    【解决方案1】:

    这对我有用,但是我觉得你给函数传递了一个不合适的 var 类型。

    Sub vlook_up()
      For i = 2 To 11
           Range("D" & i).Value = WorksheetFunction.IfError(Application.WorksheetFunction.VLookup(Sheets("Sheet1").Range("B" & i), Sheets("Sheet2").Range("A1:K500"), 3, False), "error")
      Next i
    End Sub
    

    【讨论】:

    • 感谢您的回复@Lowpar
    【解决方案2】:

    试试这个

    Sub vlook_up()
      For i = 2 To 11
           Range("D" & i).Value = Application.WorksheetFunction.VLookup(Sheets("Sheet1").Range("B" & i), Sheets("Sheet2").Range("A1:K500"), 3, False);
      Next i
    End Sub
    

     Sub vlook_up()
          For i = 2 To 11
               Range("D" & i).Value = Application.VLookup(Sheets("Sheet1").Range("B" & i), Sheets("Sheet2").Range("A1:K500"), 3, False);
          Next i
        End Sub
    

    【讨论】:

    • 感谢您的回复@Karthick
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多