Die sheets per Makro zu löschen mit ActiveWorkbook.Sheets(i).Delete geht zwar aber ist unschön. Deshalb wollte ich einfach alle leeren Sheets löschen.
Bis auf 1 leeres Sheet geht es gibt dann einen Laufzeitfehler '9' Index ausserhalb des gültigen Bereichs. Da komme ich jetzt nicht weiter, wo mache ich da einen Fehler?Hier mein code:
Sub KopiereSheets()
Dim i As Integer 'sheet Nummer
i = 2 'Startwert setzen
Workbooks.Add
For i = 2 To 6 'gilt für sheet 2-6
ThisWorkbook.Sheets(i).Copy before:=ActiveWorkbook.Sheets(i - 1)
Next i
i = 1 'i neu setzen
For i = 1 To ActiveWorkbook.Sheets.Count
If WorksheetFunction.CountA(Worksheets(i).Cells) = 0 Then
Application.DisplayAlerts = False
Worksheets(i).Delete
Application.DisplayAlerts = True
End If
Next i
'geht zwar aber eben..
'Application.DisplayAlerts = False
'ActiveWorkbook.Sheets(8).Delete
'ActiveWorkbook.Sheets(7).Delete
'ActiveWorkbook.Sheets(6).Delete
'Application.DisplayAlerts = True
End Sub
LG Richi