首页 > 解决方案 > 使用 VBA (excel) 自动复制和粘贴整行

问题描述

Sheets("Source").Select
Rows("1:1").Select
Selection.Copy
Sheets("Print").Select
Rows("1:1").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
    :=False, Transpose:=False

Sheets("Source").Select
Rows("2:2").Select
Application.CutCopyMode = False
Selection.Copy
Sheets("Print").Select
Rows("1:1").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
    :=False, Transpose:=False

所以,这是示例代码。我想要做的是从工作Source表复制每一行并自动粘贴到工作表中的1:1Print

范围每次都不一样。如果代码作为行号工作,那就太好了。

[第二个问题] 好的,现在我有新的问题。执行代码后,Excel 冻结。

这是新代码。

Dim i As Long 'i - Number of rows in Source list
NumRows = Range("A1", Range("A1").End(xlDown)).Rows.Count
For i = 1 To NumRows
    Worksheets("Source").Rows(i).Copy
    Worksheets("Print").Rows("1:1").PasteSpecial Paste:=xlPasteValues
    Worksheets("Print").PrintOut Copies:=1, Collate:=True, _
            IgnorePrintAreas:=False
Next

标签: excelvbarows

解决方案


您可以使用 FOR 循环序列,但我不确定您想要的程序是什么。你能分享更多关于它的细节吗?


推荐阅读