所以我现在尝试在vba中使用autofill方法,在一个设置为变量的范围内。我知道您从自动填充的单元格范围必须包含在目标中。所以,我这样做。然而,令我惊讶的是,该范围内的所有细胞都被设置为空。
以下是代码:
Dim table2Range As Range
Dim table2Range2 As Range
Dim table2Range3 As Range
Dim tableholder As Range
Set table2Range2 = Range("Y54").End(xlToRight).Offset(0, 1)
Set table2Range3 = Range("Y77").End(xlToRight).Offset(0, 1)
Set table2Range = Range(table2Range2, table2Range3)
Set tableholder = Range("y54", table2Range3)
tableholder.Select
table2Range.AutoFill Destination:=Selection 'This is setting all my cells to nothing for some reason
非常感谢任何帮助!
答案 0 :(得分:0)
您的自动填充代码行应为:
SourceRange.AutoFill Destination:FillRange
看起来您的“table2Range”是源,它与您的填充范围重叠。即:
.End(xlToRight)。Offset(0,1)将设置从Y54到同一行最右边单元格的范围。
您可以先使用硬编码编辑源范围(即范围(“Y54:Z77”),看看它是否适合您,然后从那里开始工作
例如(尝试使用新工作簿):
Sub example()
Set SourceRange = Worksheets("Sheet1").Range("A1:B1")
Set fillRange = Worksheets("Sheet1").Range("A1:G1")
SourceRange.AutoFill Destination:=fillRange
End Sub
在单元格(A1)中输入“1”,在单元格(B1)中输入“2”并运行代码。