VBA:插入If公式并将公式复制到整行

VBA:插入If公式并将公式复制到整行,vba,excel,Vba,Excel,我正在尝试在新列中插入公式(新单击)。我的数据包含4列-站点、印象、点击和新点击。我想插入的公式是: =IF(Site = "Facebook.com", 0,IF(Site = "Google Search", 0, Clicks)) 如果网站名为Facebook.com或googlesearch,我想将点击次数改为0,并且公式应适用于excel表中的所有行 下面是我的代码,但我在运行它时一直遇到应用程序/对象定义的错误 Dim lastr1 As Long Dim strFormulas1

我正在尝试在新列中插入公式(新单击)。我的数据包含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

通过将公式设置为以下范围,实际上可以跳过许多引号和b变量:

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
字段将以与使用自动填充功能相同的方式自动更新