ich möchte gerade mittels VBA Tabellenblätter aus einer Mappe in eine andere verschieben. Das Makro funktioniert beim ersten Schleifendurchlauf, doch dann bricht es mit der Fehlermeldung "Laufzeitfehler '9': Index außerhalb des gültigen Bereichs" ab. Ich bin nicht sicher wie die Indizes vergeben werden, bin aber davon ausgegangen, dass die Tabellenblätter von 1 bis zum letzten Tabellenblatt durchnummeriert sind. Liegt hier meine Fehlannahme?
Sub Übertragen()
Dim i As Integer, j As Integer, x As Integer
Workbooks.Add
ActiveWorkbook.SaveAs "C:\Users\Tobias\Desktop\neu.xls"
Workbooks("alt").Sheets(1).Activate
i = Sheets("00000").Index
j = 1
For x = 1 To ActiveWorkbook.Sheets.Count
If Sheets(x).Index > i Or Sheets(x).Index = i Then
Sheets(x).Move After:=Workbooks("neu").Sheets(j)
j = j + 1
End If
Next
Workbooks("Varipack").Sheets(1).Delete
End Sub
Der Fehler wird mir vom Debugger in der fett markierten Zeile angezeigt.
Das Makro soll alle Blätter ab dem Tabellenblatt "00000" verschieben. Leider verschiebt es nur eben dieses und produziert dann den genannten Fehler. Ich habe gerade echt ein Brett vorm Kopf und finde trotz viel Grübeln meinen Fehler in der Logik nicht.
Vielen Dank fürs Helfen
Grüße