Vba 为什么我的自动填充不起作用?

Vba 为什么我的自动填充不起作用?,vba,excel,Vba,Excel,希望你能帮我解决以下问题,我不知道为什么这不起作用,我似乎也不明白。在谷歌搜索之后,我甚至找不到这个问题的另一个例子 基本上,代码应该在一个页面上获取数据,将HLOOKUPS放在另一个页面上,以便将所有内容排序到正确的列中(所有工作正常)。一旦完成,它应该使用行计数自动填充 我的问题是,它在错误的工作表上自动填充(值得一提的是,它填充的工作表与代码所在的工作表以及rowcnt所在的工作表相同) 我试图显式调用我想要用作的工作表:Range(“A2:V2”)。自动填充目标:=工作表(5)。Rang

希望你能帮我解决以下问题,我不知道为什么这不起作用,我似乎也不明白。在谷歌搜索之后,我甚至找不到这个问题的另一个例子

基本上,代码应该在一个页面上获取数据,将HLOOKUPS放在另一个页面上,以便将所有内容排序到正确的列中(所有工作正常)。一旦完成,它应该使用行计数自动填充

我的问题是,它在错误的工作表上自动填充(值得一提的是,它填充的工作表与代码所在的工作表以及rowcnt所在的工作表相同)

我试图显式调用我想要用作的工作表:
Range(“A2:V2”)。自动填充目标:=工作表(5)。Range(“A3:V”&rowcnt),Type:=xlFillDefault
,但这会在代码的填充行上抛出应用程序定义或对象定义的错误

Public Sub FormatData()

    rowcnt = Application.WorksheetFunction.CountA(Sheet4.Range("B:B")) + 1

With Sheets("Final Datasets")
    .Cells(2, "A").FormulaR1C1 = _
    "=HLOOKUP(""oOrder_date"",'Teradata Downloads'!R1:R1048576,ROW('Final Datasets'!RC),0)"

[snip] load more of the same as above [/snip]

        'FILL
        Range("A2:V2").AutoFill Destination:=Range("A3:V" & rowcnt), Type:=xlFillDefault

    End With

End Sub

我在这里有点困惑,因此,如果您能提供任何关于如何解决这个问题(更重要的是,它为什么会发生)的帮助,我们将不胜感激。

如果您在With语句中有自动填充功能,请尝试在范围之前使用“.”

.Range("A2:V2").AutoFill Destination:=.Range("A3:V" & rowcnt)

我很有希望,但不幸的是没有成功。我试图用with语句将其取出并添加工作表:
Sheets(5).Range(“A2:V2”)。自动填充目标:=Sheets(5).Range(“A3:V”和rowcnt),键入:=xlFillDefault
,但不幸的是,它也不起作用。忽略我的上一条评论-编辑了一些其他内容并起了作用-谢谢!@StevenWalker。很高兴听到。问题出在哪里?老实说,我不完全确定-我调整了一些内容,其中一个似乎起作用了!其中一个是我将A3改为A2,所以可能是这样?