我正在尝试让公式显示列“C”(RC3)的前一行的数量或出现次数。
理想的结果如下:
数:3
如果前一行中出现3次值。
以下代码返回“False”。
y.FormulaR1C1 = "Count: " + "=Application.WorksheetFunction.CountIf(range(R3C3:R" & LR & "C3), " = "&R[-1]C3)"
y是一个单元格
LR是最后一行
谢谢,如果我能进一步澄清,请告诉我。
答案 0 :(得分:0)
如果您正在尝试制作一个结合了TEXT和内置函数的公式,请使用=CONCATENATE()
。考虑以下示例:
如果您要使用VBA填写相对位置(.FormulaR1C1
)的公式,那么它将是:
=CONCATENATE("Count: ",COUNTIF(R[-5]C:R[-2]C,"=" &R[-1]C))
答案 1 :(得分:0)
CountIf函数永远不会计算任何东西,只要它在测试字符串中。而且你不需要' Application.WorksheetFunction'在单元格公式中(仅当您要在VBA中完全使用该函数时)。此外,您不需要Excel公式中的范围功能。试试这个:
y.FormulaR1C1 = "=""Count: ""&CountIf(R3C3:R" & LR & "C3,R[-1]C3)"
虽然如果您的搜索范围和标准单元格之间没有任何内容,您可以完全取消LR:
y.FormulaR1C1 = "=""Count: ""&CountIf(R3C3:R[-2]C3,R[-1]C3)"