当公式随行数增加而改变时,我该如何将公式插入单元格中?

4

我已经在第P列的第二行输入了这些公式:

=(COUNTIF(A$1:A1,A2)=0)+(COUNTIF(B$1:B1,B2)=0)+(COUNTIF(F$1:F1,F2)=0)

当我将它拖到第P列的第三行时,它会变成这样:
 =(COUNTIF(A$1:A2,A3)=0)+(COUNTIF(B$1:B2,B3)=0)+(COUNTIF(F$1:F2,F3)=0)

这是我手动完成的操作。如何使用VBA实现?我已经尝试了以下方法。
cells(Count,"M").formula= "=(COUNTIF(A$1:A1,A2)=0)+(COUNTIF(B$1:B1,B2)=0)+(COUNTIF(F$1:F1,F2)=0)"

但是它没起作用。它没有从

改变。
"=(COUNTIF(A$1:A1,A2)=0)+(COUNTIF(B$1:B1,B2)=0)+(COUNTIF(F$1:F1,F2)=0)" 

to

"=(COUNTIF(A$1:A2,A3)=0)+(COUNTIF(B$1:B2,B3)=0)+(COUNTIF(F$1:F2,F3)=0)"

如何在单元格中插入公式,当随着行数的增加公式也会发生变化时?

你可以直接在VBA中复制/粘贴公式;而不是将公式设置为文本值,从一个正确的单元格中复制它,并粘贴到目标单元格中。 - Joubarc
2个回答

5
您可以用一行代码完成此操作:
range("P2").Copy Destination:=range("P3:P10")

不需要变量、循环或其他任何东西!

2
根据Joubarc的建议
Cells(2, "P").Copy
For Row = 3 To 10
     Cells(Row, "P").Select
     ActiveSheet.Paste
 Next Row

你不需要选择要复制的单元格,Cells(2, "P").Copy 应该就可以工作。 - JMax
好的点子。将选择和复制更改为直接复制单元格。 - grantnz
给有帮助的答案点赞 +1。您可以在一行内完成此操作(我发布了我的解决方案)。 - Gaijinhunter

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接