公式R1C1使用IF发布

时间:2014-06-28 21:50:36

标签: vba if-statement

这对我来说是新的。尝试使用IF在VBA中运行公式时遇到问题。

这个想法是在AR3列中包含一个修改日期,当时在C3中包含信息。

这就是我写的:

Range("AR3").Select
ActiveCell.FormulaR1C1 = "=IF(RC[-3]="";"";IF(RC[-44]="";NOW();RC[-44])" 

提前致谢!!

1 个答案:

答案 0 :(得分:2)

你的公式有两件事情不对:

  • 你需要转义双引号(双引号......总共四个)
  • 您缺少右括号
  • 这是可选的,但您不需要选择范围

您可以使用以下更正的声明:

Range("AR3").FormulaR1C1 = "=IF(RC[-3]="""","""",IF(RC[-44]="""",NOW(),RC[-44]))"

下次遇到这种麻烦时,只需使用宏录制器:点击"录制宏",然后输入您的公式。另外,当有用时,您可以随时将Excel中的显示更改为R1C1参考样式(选项>公式> R1C1参考样式)(我个人已将此更改映射到快捷键组合,因此我可以轻松获得列号如果需要)