在新创build的工作簿中复制行的Excel 2003macros

我想将每个工作表的第一行从工作簿A复制到新创build的工作簿(工作簿B)。 然后在工作簿B的第二个工作表中的第二行,直到所有行被复制。 你能告诉我该怎么做吗?

这是您在Excel中使用“loggingmacros”function时获得的代码。

Sub Macro1() Windows("Book1").Activate Sheets("Sheet1").Select Rows("1:1").Select Selection.Copy Windows("Book2").Activate Range("A1").Select ActiveSheet.Paste Windows("Book1").Activate Sheets("Sheet2").Select Rows("1:1").Select Selection.Copy Windows("Book2").Activate Range("A2").Select ActiveSheet.Paste End Sub 

我只做了两个工作表的源代码,所以目的地两行。 你可以看到需要发生的步骤。 从这个angular度来看,把这段代码转换成一个循环是非常简单的,并且可以根据你的需要为它打印任意数量的页/行。 如果要为源工作簿中的所有工作表执行此操作,则可以使用For each循环。

 Dim sht As Worksheet For Each sht In Worksheets //do stuff Next 

在目标工作簿中select下一行时,请勿使用绝对引用样式:

 Range("A1").Select 

使用Row,Column引用样式,那么很容易用计数器递增行:

 Cells(1,1).Select 

然后只增加第一个'1'下降到下一行。