带有dynamic范围的Excel VBA公式不起作用

我在Excel中有以下公式,在这里我使用countifdynamic范围。 当我在macros中应用这个公式时,这不是赋值,而是单引号(')覆盖范围。

Cells(XRow, 3).Formula = "=COUNTIF( " & Range(Cells(6, 5), Cells(YRow - 1, 5)).Address(0, 0) & " ,RC[-1])" 

这是我在细胞中获得的

 =COUNTIF( 'E6':'E212',B6) 

我不确定为什么单引号占据单元格'E6',如果我从单元格中手动删除它,它会工作。 任何帮助将非常感激。

您正在混合引用xlA1xlR1C1样式:

用这个 :

 Dim Rg As Range Set Rg = Cells(XRow, 3) Rg.Formula = "=COUNTIF(" & Range(Cells(6, 5), Cells(YRow - 1, 5)).Address(0, 0) & "," & Rg.Offset(0, -1).Address(0, 0) & ")"