Excel VBA:错误1004 WorkSheetFunction“无法获取Vlookup属性”
试图在Excel 2010中写一个VBA的快捷方式
- 使用Vlookup来查找一个值
- 返回第三列中的值
- 将给定的单元格设置为此值
我的困难在于公式。
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
任何指针赞赏!
两种方式给你。
1)使用.Formula
属性:
With ThisWorkbook.Worksheets("Sheet1").Range("A1") .Formula = "=VLOOKUP(""Justin"",A7:D9,3,FALSE)" .Value = .Value End With
.Value = .Value
用它的结果重写公式
2)使用Application.VLookup
与Range("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
注意, x
应该是Variant
,因为如果没有find, Application.VLookup
返回Error 2042
( Error 2042
#N/A
)