根据另一个单元格中的值自动填充 x 行的代码
Posted
技术标签:
【中文标题】根据另一个单元格中的值自动填充 x 行的代码【英文标题】:Code to autofill x number of rows based on a value from another cell 【发布时间】:2018-05-09 13:21:30 【问题描述】:我有一个宏,它会根据另一个单元格中的值自动将工作表向下填充多行。
我的代码如下。目前它只会将系列自动填充到参考单元格中值的行号。 (基本上,如果我在引用的单元格上有数字 40,代码会自动填充到第 40 行,而不是我需要的 40 行)。
想知道是否有人可以在这里帮助我。
Range("A8").Select
Application.CutCopyMode = False
Selection.AutoFill Destination:=Range("A8:A" & Range("J1").Value), Type:=xlFillSeries
Range("A8:A104").Select
这是代码的一部分,之前的代码将一些其他信息复制到工作表中。
【问题讨论】:
如果你总是从 A8 开始并且你想填充接下来的 X 行,你可以做一个快速的脏 +8,它会按照你的要求做,如果你输入 20,它会做接下来的 20 行,如果你做 30 行,它会做接下来的 30 行:Selection.AutoFill Destination:=Range("A8:A" & Range("J1").Value + 8), Type:=xlFillSeries跨度> Ricardo - 见下文 Olly 给了我一些最适合我现有代码的代码,它很有效 - 感谢 cmets。 【参考方案1】:像这样?
Option Explicit
Public Sub test()
With ActiveSheet
AutoFillRange .Range("A8"), Range("J1").Value
End With
End Sub
Public Sub AutoFillRange(ByVal startCell As Range, ByVal numberOfRows As Long)
startCell.AutoFill Destination:=startCell.Parent.Range(startCell, startCell.Offset(numberOfRows - 1)), Type:=xlFillSeries
End Sub
【讨论】:
QHarr - 下面的 Olly 给了我一些代码,这些代码更容易与我现有的代码相匹配,谢天谢地,它很有效。因此,我没有尝试您的代码,但可以再保留一天。感谢您的努力。 不用担心。上面的优点,供以后使用,是您可以重复使用具有不同起始单元格和不同单元格的相同子 (AutoFillRange) 以用于行计数。【参考方案2】:试试:
Range("A8").AutoFill Destination:=Range("A8").Resize(Range("J1").Value,1), Type:=xlFillSeries
【讨论】:
Olly - 这是我尝试使用其他代码的最简单选择 - 非常感谢,因为这绝对是一种享受。以上是关于根据另一个单元格中的值自动填充 x 行的代码的主要内容,如果未能解决你的问题,请参考以下文章
EXCEL:使用与单元格中的数字匹配的自动填充数据/函数创建/删除行