Excel VBA:使用R1C1格式,“应用程序定义的或对象定义的错误”

我想创build一个引用其他单元格的公式,但我不断收到这个“应用程序定义或对象定义的错误”。 我使用R1C1约定而不是偏移量。

我的代码:

注意:这个代码可以在任何地方,我只需要它的工作。 另外,我不使用这样的代码。 它被用在一个报告工具中,但这只是类似的代码(我实际使用的)足以显示我的问题

Cells(1, 1).Value = "5/1/2014 6:30" soiDate = "$A$1" Cells(10, 6).Value = "6/5/2014 14:12" Cells(10, 10).Formula = "=(R[0]C[-4]-" & soiDate & ")*24" 'Error Occurs Here 

更新:

以下也不起作用:

 Cells(10, 10).FormulaR1C1 = "=(R[0]C[-4]-" & soiDate & ")*24" 

尝试这个:

 Cells(10, 10).FormulaR1C1 = _ "=(R[0]C[-4]-" & Range(soiDate).Address(, , xlR1C1) & ")*24" 

它错误了,因为你有点混淆了A1的R1C1引用。
只要保持一致,您可以使用Range Object地址属性来转换引用。 HTH。