如何转换excel公式在VBA中工作?

我发现了这个了不起的提示:

Richard Schollar: VLOOKUP Left!

但是,公式

=VLOOKUP(F2,CHOOSE({1,2},$C$2:$C$7,$A$2:$A$7),2,False) 

如果在单元格中input,但是在VBA中,则会出现语法错误:

 Set Rng = Range(Application.WorksheetFunction.Choose({1, 2}, colMax.Address, colId.Address)) 

既然这个工作尽pipe它不做我想要的:

 Set Rng = Range(Application.WorksheetFunction.Choose(1, colMax.Address, colId.Address)) 

这似乎是{…}这个问题。 用googlesearch的问题是,我不知道什么{…}被称为(数组,序列表…)。

所以问题是如何在VBA中使用这个技巧。

只需使用Evaluate函数来评估VBA中的公式。 没有必要将其“翻译”到VBA:

看到这个链接http://msdn.microsoft.com/en-us/library/office/ff193019(v=office.15).aspx