【发布时间】:2019-12-15 09:11:18
【问题描述】:
我正在尝试将一行公式自动填充到它之前的行。
我使用的是 excel 2010。我知道我在自动填充功能中使用的范围是正确的,我通过添加选择功能并逐行检查以确保它选择了正确的范围。
Sub NewIC()
Dim v As Range, newV As Range, oldVRow As Range, newVRow As Range
Dim s As Range
Dim dc As Range
With Sheets("Charts").Cells
'Inserting name into Vios
Set v = .Find("Vios", LookIn:=xlValues)
If Not v Is Nothing Then
v.Select
ActiveCell.Offset(4, 0).Select
With Selection.EntireRow.Insert(xlShiftDown, xlFormatFromRightOrBelow)
Set newV = ActiveCell
Range("T1").Copy newV
newV.Font.Bold = True
End With
End If
'Dragging up formulas
Set oldVRow = Range(newV.Offset(-1, 1), newV.Offset(-1, 8))
Set newVRow = Range(newV.Offset(0, 1), newV.Offset(0, 8))
oldVRow.Select
newVRow.Select
newVRow.AutoFill Destination:=oldVRow, Type:=xlFillDefault
End With
End Sub
所有代码都运行到最后一行。它将正确的单元格设置为 newV,设置正确的范围,但我收到错误
Range 类的运行时错误“1004”AutoFill 方法失败
【问题讨论】:
-
目的地必须包括起点。从您的
Offsets 的外观来看,我不认为newVRow和oldVRow重叠。