VBA:插入如果公式并复制整个行的公式

我正在尝试在新列中插入一个公式(新的点击)。 我的数据包含4列 – 网站,展示次数,点击次数和新点击次数。 我想要插入的公式是:

=IF(Site = "Facebook.com", 0,IF(Site = "Google Search", 0, Clicks)) 

如果网站名称是Facebook.com或Googlesearch,我想将点击次数更改为0,并且公式应该适用于Excel表格中的所有行。

下面是我的代码,但是当我运行它时,我总是收到应用程序/对象定义的错误。

 Dim lastr1 As Long Dim strFormulas1 As Variant Dim b As Variant lastr1 = Worksheets("Formula").Range("A:A").Find("*", SearchDirection:=xlPrevious).Row For b = 7 To lastr1 wb.Sheets("Formula").Range("D" & b).Formula = "=IF(A " & b & ") " = " ""Facebook.com"",""0"",IF(A" & b & ") " = " ""Google Search"",""0""))" Next b 

实际上可以通过设置公式等于范围来跳过很多引号和bvariables:

 Sub FormulaRng() Dim lastr1 As Long lastr1 = Worksheets("Formula").Range("A:A").Find("*", SearchDirection:=xlPrevious).Row Worksheets("Formula").Range("D7:D" & lastr1).Formula = "=IF(A7=""Facebook.com"",0,IF(A7=""Google Search"",0,C7))" End Sub 

这些字段将自动更新,就像使用自动填充function一样。