FormulaR1C1不起作用

我有以下代码:

Dim lastrow As Double Dim lastrowX As String lastrow = ActiveSheet.Cells(Rows.Count, 1).End(xlUp).Row lastrowX = "X2:X" & lastrow Range(lastrowX).FormulaR1C1 = "=IF(RC[-4]=RC[-19],RC[-15],"""")" 

问题是,而不是工作公式,它给了我以下几点:

 =IF(RC[-4]=RC[-19],RC[-15],"""") 

为什么excel不想将RC“转换”为引用?

因为单元格格式不允许公式被视为真正的公式。 由于单元格可能被格式化为文本。

replace下面的代码行

 Range(lastrowX).FormulaR1C1 = "=IF(RC[-4]=RC[-19],RC[-15],"""")" 

 With Range(lastrowX) .Clear .FormulaR1C1 = "=IF(RC[-4]=RC[-19],RC[-15],"""")" End With