用VBA将公式写入单元格会产生额外的括号

我正在创build一个将公式写入单元格的macros。 但是,运行后出现在单元格中的公式是添加括号。

这是代码:

Selection.Offset(0, 1).Select Selection = "=VLOOKUP(RC[-1],Parameters!A:B,2,0)" 

这是运行后单元格中的公式:

 =VLOOKUP(B2305,Parameters!A:(B),2,0) 

它是在B列中添加一个括号 。 你能帮我解决这个问题吗?

你正在“两全其美”,Excel不喜欢它! :)例如,你正在使用RC和字母符号。 因此,Excel会更改您的公式。

像这样的东西应该工作:

Selection.formula = "=VLOOKUP(D47,Parameters!A:B,2,0)"

或者像这样的东西,如果你在RC中制作的话:

Selection.FormulaR1C1 = "=VLOOKUP(RC[-1],Parameters!C[-4]:C[-3],2,0)

Selection.Formula = "=VLOOKUP(RC[-1],Parameters!C[-4]:C[-3],2,0)

Selection.FormulaSelection.Formular1c1工作)在这里你可以看到更多关于RC公式:

  • Excel Easy – FormulaR1C1
  • 更好的解决scheme – A1或R1C1表示法