2016-11-04 3 views
1

Kann die Reihenfolge der Arbeitsblätter beim Kopieren in eine andere Arbeitsmappe gesteuert werden? Mein Code listet die Reihenfolge auf, in der die Blätter in der neuen Arbeitsmappe angezeigt werden sollen. Das Blatt "Fehlgeschlagen" wird jedoch weiterhin in der Tabulatorreihenfolge angezeigt. Jede Hilfe würde sehr geschätzt werden. Vielen Dank.EXCEL Festlegen der Blattreihenfolge beim Kopieren in eine neue Arbeitsmappe

Set wb = ThisWorkbook 
wb.Save 
wb.Sheets(Array("Fail", "Fail Screenshot", "Fail Screenshot2", "Fail Screenshot3", "Fail Screenshot4")).Copy 
Set tempWB = ActiveWorkbook 
fileName = "C:\Users\ME\Desktop\TEST\" & Sheets("Fail").Range("M7").Value & ".xlsx" 
ActiveWorkbook.SaveAs fileName:=fileName, FileFormat:=xlOpenXMLWorkbook, Password:="", WriteResPassword:="", ReadOnlyRecommended:=False, CreateBackup:=False 
If Len(Dir(tempFile)) <> 0 Then 
Kill tempFile 

Antwort

0

Wenn die Liste nur halten, „Fail“ Arbeitsblatt als erste scheitern sollte dann einfach verschieben:

wb.Sheets(Array("Fail", "Fail Screenshot", "Fail Screenshot2", "Fail Screenshot3", "Fail Screenshot4")).Copy 
Sheets("Fail").Move Before:=Sheets(1) 
0

Versuchen Sie, Ihre Blätter zu sortieren, nachdem neue Arbeitsmappe kopieren:

Sub sheetorders() 
Dim m, arr 
Set wb = ThisWorkbook 
arr = Array("Fail", "Fail Screenshot", "Fail Screenshot2", "Fail Screenshot3", "Fail Screenshot4") 
wb.Save 
wb.Sheets(arr).Copy 
For Each m In arr 
    Sheets(m).Move After:=Sheets(Sheets.Count) 
Next m 
Set tempWB = ActiveWorkbook 
fileName = "C:\Users\ME\Desktop\TEST\" & Sheets("Fail").Range("M7").Value & ".xlsx" 
ActiveWorkbook.SaveAs fileName:=fileName, FileFormat:=xlOpenXMLWorkbook, Password:="", WriteResPassword:="", ReadOnlyRecommended:=False, CreateBackup:=False 
If Len(Dir(tempFile)) <> 0 Then 
Kill tempFile 
End Sub 
Verwandte Themen