2014-01-31 72 views
1

我已經使用了Google,但找不到明確的答案。在Excel中簡單重複宏

我有一個包含大量工作表的工作簿,每個工作表都包含採購訂單信息。 我想從每張紙上覆制相同的單元格範圍並編譯所有這些範圍的長列表。

我的代碼是目前;

Sub WorksheetLoop() 


    Sheets("5040001253").Select 
    Range("A4:O23").Select 
    Selection.Copy 
    Sheets("PO_Combi").Select 

lastRow = ActiveSheet.Cells(Rows.Count, "A").End(xlUp).Row 

ActiveSheet.Range("A" & lastRow + 1).Select 
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _ 
:=False, Transpose:=False 
Application.CutCopyMode = False 


End Sub 

我的問題是:是否有一個簡單的命令,允許更換命名5040001253與將所有表這個宏重複的表?如果沒有,有人能告訴我該怎麼做才能做到這一點?

回答

1

下一個代碼副本Range("A4:O23")從每個片(除PO_Combi)到A列表PO_Combi的:

Sub WorksheetLoop() 
    Dim sh As Worksheet 
    Dim shCombi As Worksheet 
    Dim lastrow As Long 

    Set shCombi = ThisWorkbook.Worksheets("PO_Combi") 

    For Each sh In ThisWorkbook.Worksheets 
     With shCombi 
      If sh.Name <> .Name Then 
       lastrow = .Cells(.Rows.Count, "A").End(xlUp).Row 
       sh.Range("A4:O23").Copy 
       .Range("A" & lastrow + 1).PasteSpecial xlPasteValues 
      End If 
     End With 
    Next 

    Application.CutCopyMode = False 
End Sub 
+1

謝謝,完美地解決了這個問題! :) – user3257060