希望在下面的代码中收到帮助。它适用于模块1,但不适用于任何工作表。我凭借有限的知识尽力而为,但未能解决它。
Sub lastrow()
Dim MCFPSheet As Worksheet
Set MCFPSheet = ThisWorkbook.Worksheets("MCFP Referrals YTD")
Dim lastrow As Long
lastrow = MCFPSheet.Range("I2").End(xlDown).Row
With MCFPSheet.Range("R8")
.AutoFill Destination:=Range("R8:R" & lastrow&)
End With
With MCFPSheet.Range("S2")
.AutoFill Destination:=Range("S2:S" & lastrow&)
End With
With MCFPSheet.Range("T2")
.AutoFill Destination:=Range("T2:T" & lastrow&)
End With
With MCFPSheet.Range("U2")
.AutoFill Destination:=Range("U2:U" & lastrow&)
End With
With MCFPSheet.Range("V2")
.AutoFill Destination:=Range("V2:V" & lastrow&)
End With
With MCFPSheet.Range("W2")
.AutoFill Destination:=Range("W2:W" & lastrow&)
End With
End Sub
我收到了
错误1004
在.AutoFill Destination:=Range("R8:R" & lastrow&)
行。
答案 0 :(得分:1)
根据@Sixthsense的评论,您需要为目的地指定工作表,如果所有这些With
语句都是单行的,那么所有这些With
语句都没有多大意义。
使用Sub lastrow()
Dim MCFPSheet As Worksheet
Set MCFPSheet = ThisWorkbook.Worksheets("MCFP Referrals YTD")
Dim lastrow As Long
lastrow = MCFPSheet.Range("I2").End(xlDown).Row
With MCFPSheet
.Range("R8").AutoFill Destination:=.Range("R8:R" & lastrow)
.Range("S2").AutoFill Destination:=.Range("S2:S" & lastrow)
.Range("T2").AutoFill Destination:=.Range("T2:T" & lastrow)
.Range("U2").AutoFill Destination:=.Range("U2:U" & lastrow)
.Range("V2").AutoFill Destination:=.Range("V2:V" & lastrow)
.Range("W2").AutoFill Destination:=.Range("W2:W" & lastrow)
End With
End Sub
方式会更短:
Destination:=.Range
请注意,MCFPSheet
现在也使用.
之前的前导Range
来引用&
表。
我还从lastrow&
中删除了⎕SE
{I},但我没有看到任何意义。