代码之家  ›  专栏  ›  技术社区  ›  CSAW

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

  •  0
  • CSAW  · 技术社区  · 12 年前

    我正在尝试创建一个引用其他单元格的公式,但我一直得到这个“应用程序定义或对象定义的错误”。我使用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"
    
    1 回复  |  直到 8 年前
        1
  •  3
  •   L42    12 年前

    试试看:

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

    它出错了,因为你有点混淆了R1C1对A1的引用。
    只要保持一致,就可以使用 范围对象 要转换引用的地址属性。高温。

    推荐文章