【问题标题】:VBA Debug - Run-time 1004: R1C1 Formula Not CalculatingVBA 调试 - 运行时 1004:R1C1 公式未计算
【发布时间】:2019-05-30 15:34:51
【问题描述】:

我正在尝试编写一些包含 Excel 公式的 VBA 脚本,但不断收到错误,并且似乎无法在任何地方找到解决方案。

我认为可能导致问题的原因是我有一个包含 +1 的 R1C1 公式。我不能确定,但​​它似乎有可能被解释为错误的语法。也许让它认为我指的是当前列 + 1 列。总的拉伸。

Range("A4").Select
ActiveCell.FormulaR1C1 = _
    "=IF(R[-1]C+1>R2C15,"",R[-1]C+1)"

最终结果应该是如果上一行的值+1大于R2C15(O2)中的值,则产生空白,否则上一行的值+1。但是,我不断收到 1004 错误。

有什么想法吗?

【问题讨论】:

  • 把这个:"=IF(R[-1]C+1>R2C15,"",R[-1]C+1)" 变成这个:"=IF(R[-1]C>VALUE(RC)+1,"",VALUE(R[-1]C)+1)"
  • 这以及 Gareth 的回答是解决此错误的原因。谢谢!

标签: excel vba excel-r1c1-notation


【解决方案1】:

您没有转义引号。

如果您是 VBA 新手,则需要一些时间来适应,但您需要使用

Range("A4").Select
ActiveCell.FormulaR1C1 = _
    "=IF(R[-1]C+1>R2C15,"""",R[-1]C+1)"

【讨论】:

  • 这以及达米安的回答是解决此错误的原因。谢谢!
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多