macros复制并粘贴使用循环

我正在试图通过从不同的工作表中复制信息到摘要工作表来做一个总结。 更具体地说,我试图将sheet3中的单元格O3和O4分别复制到sheet1中的单元格D3和E3中。 然后,我想继续前进,并将单元格O3和O4从表单4分别复制到单元格1中的单元格D4和E4,等等通过我的所有表单。

我是macros观编码全新的,所以非常感谢任何帮助,谢谢。 我假设一个人将不得不使用一个循环。

PS工作表是以公司的名字命名的(例如“DataGroup”而不是“Sheet3”)会影响代码吗?

如果您有包含一些工作表的工作簿,并且其中一个工作表称为Summary ,则此代码将从其他每个工作表中的单元格A1的值复制到Summary A列中。 你可以适应这个,以满足您的需求。

 Dim ws As Worksheet, rowDest As Integer rowDest = 1 For Each ws In ThisWorkbook.Worksheets If ws.Name <> "Summary" Then Worksheets("Summary").Cells(rowDest, 1).Value = ws.Range("A1").Value rowDest = rowDest + 1 End If Next ws 

如果你正在寻找循环你的工作表,你不需要明确地引用它们,即Sheets("DataGroup")你可以使用Sheets(1) ,因此可以很容易地遍历每个整数。

例如

 Sub Copying() Dim i As Integer, j As Integer j = Sheets.Count For i = 2 To j Sheets(1).Range("D" & i + 1) = Sheets(i).Range("O3").Value Sheets(1).Range("E" & i + 1) = Sheets(i).Range("O4").Value Next i End Sub