我将Cl
定义为范围,并尝试使用VLookUp
从表中的数据中分配范围。
从VLookUp
获得的结果是范围地址(例如:e58
)。
我无法将其指定为范围。
Set Cl= Range ("=vlookup(i, Range("a7:b28"), 2, False)")
答案 0 :(得分:1)
这不是你在VBA中运行公式的方式。 Application
对象中包含一些函数(包括VLookUp
)。
Set cl = Range(Application.VLookup(i, Range("a7:b28"), 2, False))
对于其他人,请使用Application.WorksheetFunction
对象
Set cl = Range(Application.WorksheetFunction.VLookup(i, Range("a7:b28"), 2, False))
注意:这两种方法存在一些细微差别,特别是函数如何处理错误。 Ant是的,你应该为你的代码添加错误处理。
旁注:即使您的方法有效,您也需要在"
周围划分a7:b28
,就像这样
"=vlookup(i, Range(""a7:b28""), 2, False)"