VBA 复制一行并插入到下一行,然后重复。

huangapple go评论81阅读模式
英文:

vba to copy a row and insert to row below and then repeat

问题

我想复制并插入一行,即第10行插入到第11行。然后我想再次运行该代码(通过一个命令按钮),复制第11行并插入到第12行。我希望能够无限重复这个过程,即从第12行到第13行,依此类推。

我使用记录宏功能来复制和插入,但它只复制第10行并插入到第11行。

Application.CutCopyMode = False

With Worksheets("SUMMARY")
    Rows("11:11").Select
    Selection.Insert Shift:=xlDown, CopyOrigin:=xlFormatFromLeftOrAbove
    Rows("10:10").Select
    Selection.AutoFill Destination:=Rows("10:11"), Type:=xlFillDefault
    Rows("10:11").Select
End With

请注意,这是你提供的代码的翻译,不包括任何其他内容。

英文:

I would like to copy and insert a row, ie row 10 and insert to row 11. I would then like to run that code again (via a command button), to copy row 11 and insert to row 12. I would like to be able to repeat this indefinitely, ie row 12 to row 13 and so on.

I used the record macro function to copy and insert, but it just copies row 10 and inserts to row 11.

Application.CutCopyMode = False

With Worksheets("SUMMARY")

Rows("11:11").Select
Selection.Insert Shift:=xlDown, CopyOrigin:=xlFormatFromLeftOrAbove
Rows("10:10").Select
Selection.AutoFill Destination:=Rows("10:11"), Type:=xlFillDefault
Rows("10:11").Select

答案1

得分: -2

以下是翻译好的代码部分:

Sub CopyAndInsertRow()
    Dim rowToCopy As Long
    Dim insertRow As Long
    
    rowToCopy = 10 ' 指定要复制的行号
    insertRow = 11 ' 指定要插入的行号
    
    Rows(rowToCopy).Copy
    Rows(insertRow).Insert Shift:=xlDown
End Sub
英文:

Use the below snippet

Sub CopyAndInsertRow()
Dim rowToCopy As Long
Dim insertRow As Long

rowToCopy = 10 ' Specify the row number to copy
insertRow = 11 ' Specify the row number to insert

Rows(rowToCopy).Copy
Rows(insertRow).Insert Shift:=xlDown

End Sub

huangapple
  • 本文由 发表于 2023年6月5日 22:24:40
  • 转载请务必保留本文链接:https://go.coder-hub.com/76407420.html
匿名

发表评论

匿名网友

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen:

确定