VBA公式R1C1不接受方括号内的计算
VBA formula R1C1 do not accept calculation inside square brackets
我有一段很旧的 VBA 代码,到目前为止它一直在为 Excel 工作。
现在我有 Office 365,我尝试 运行 这段代码,看起来它不起作用 - 根据我的调查。FormulaR1C1 and/or Excel 本身不接受方括号内的计算:
=IF(ISBLANK(RC[-7 + ((1 - 1) * 3)]);TRUE;False)
在 VBA 中,有效代码将是,如您在评论中所示:
R.FormulaR1C1 = "=RC[" & 1 + 6 & "]"
那是因为公式在写入工作表之前被简化为有效值。
要直接在 Excel 工作表中执行此操作,您可以使用相同的方法,但还需要使用 INDIRECT
函数:
=INDIRECT("RC[" & 1+6 & "]",FALSE)
我有一段很旧的 VBA 代码,到目前为止它一直在为 Excel 工作。 现在我有 Office 365,我尝试 运行 这段代码,看起来它不起作用 - 根据我的调查。FormulaR1C1 and/or Excel 本身不接受方括号内的计算:
=IF(ISBLANK(RC[-7 + ((1 - 1) * 3)]);TRUE;False)
在 VBA 中,有效代码将是,如您在评论中所示:
R.FormulaR1C1 = "=RC[" & 1 + 6 & "]"
那是因为公式在写入工作表之前被简化为有效值。
要直接在 Excel 工作表中执行此操作,您可以使用相同的方法,但还需要使用 INDIRECT
函数:
=INDIRECT("RC[" & 1+6 & "]",FALSE)