我有一个宏,其中包含一行,它将使用 R1C1 公式类型更改单元格的公式。
公式是:
ActiveCell.FormulaR1C1 = _
"=IF(R[0]C[-2]=0,"",(R[0]C[-20]-R[0]C[-16]))"
每当我尝试运行宏时,它总是会出现一个对话框,提示
Run-time error '1004':
Application-defined or object-defined error.
当您单击“调试”时,它会突出显示宏中的这两行。我不知道如何修复它。有人能帮忙吗?
答案1
你缺少一个右括号
ActiveCell.FormulaR1C1 = _
"=IF(R[0]C[-2]=0,"""",(R[0]C[-20]-R[0]C[-16]))"
编辑:更正为将“”放入公式中
答案2
您的问题似乎出在引号上,您是否尝试过更改或转义引号?
答案3
尝试使用它:
ActiveCell.FormulaR1C1 = _
"=IF(R[0]C[-2]=0," & Chr(34) & Chr(34) & ",(R[0]C[-20]-R[0]C[-16]))"
请记住,此公式不能放在第 20 列之前,否则会出现错误。