2014-04-02 993 views
5

試圖在Excel 2010中快速一塊VBA的寫入Excel的VBA:錯誤1004 WorkSheetFunction「無法獲取VLOOKUP財產」

  • 使用VLOOKUP找到一個值
  • 返回在第3列中的值
  • 設置一個給定的單元格該值

我的困難是與公式。

Sub Metrics123() 
    Dim x As Integer   
    x = Application.WorksheetFunction.VLookup("Test", "A7:D9", 3, False) 
    Range("A1").Value = x  
End Sub 

當我運行這個我打error 1004: 'Unable to get the Vlookup Property of the WorksheetFunction

任何指針讚賞!

回答

4

兩種方式給你。

1)使用.Formula屬性:

With ThisWorkbook.Worksheets("Sheet1").Range("A1") 
    .Formula = "=VLOOKUP(""Justin"",A7:D9,3,FALSE)" 
    .Value = .Value 
End With 

其中.Value = .Value重寫式與它的結果

2)使用Application.VLookupRange("A7:D9")代替"A7:D9"

Dim x 
With ThisWorkbook.Worksheets("Sheet1") 
    x = Application.VLookup("Justin", .Range("A7:D9"), 3, False) 
    Range("A1").Value = x 
End With 

注意,這xVariant,因爲如果沒有找到,Application.VLookup回報Error 2042#N/A

+1

優秀,感謝您的快速反應。第一個選項正常工作。 – EmilioSandoz

相關問題