我在Excel中有以下公式,我在其中应用了具有动态范围的countif。当我在宏中应用此公式时,这不是给出值而是单引号(')覆盖范围。
Cells(XRow, 3).Formula = "=COUNTIF( " & Range(Cells(6, 5), Cells(YRow - 1, 5)).Address(0, 0) & " ,RC[-1])"
这是我在细胞中得到的
=COUNTIF( 'E6':'E212',B6)
我不确定为什么单引号占用单元格'E6',如果我从单元格中手动删除它,它可以工作。任何帮助将不胜感激。
答案 0 :(得分:2)
您正在混合引用样式xlA1
和xlR1C1
:
使用此:
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) & ")"