Excelmacros公式在公式中添加引起vlookup不工作的公式

我正在尝试将一个公式添加到单元格中。 该macros正在单元格范围内添加引号,导致单元格返回#name错误。

这是macros中的代码

Cells(1, 4).FormulaR1C1 = "=VLOOKUP(RC[-2],Contracts!A7:D30,3,FALSE)" 

这是执行macros后代码在Excel中返回的内容。

 =VLOOKUP(B4,Contracts!'A7':'D30',3,FALSE) 

请注意,在删除单元格A7和D30周围的引号后,#name错误消失,并且公式可以正常工作。

您不能在同一个公式中混用RC和A1样式的引用。 挑一个,坚持下去。

 "=VLOOKUP(RC[-2],Contracts!R7C1:R30C4,3,FALSE)" 

将工作

RC [-2]似乎是问题所在。 当我用一个正常的单元格引用replace那个macros时,macros并没有把引号放在A7和D30的周围。

我相信问题是由混合RC符号(FormulaR1C1)和A1引起的。 你有没有尝试过:

 Cells(1, 4).FormulaR1C1 = "=VLOOKUP(RC[-2],""Contracts!A7:D30"",3,FALSE)" 

? 这应该工作。