Aktualisierung Blätter.count-Wert beim hinzufügen von Arbeitsblättern

Schreibe ich ein makro ein Arbeitsblatt kopieren, und fügen Sie es auf einen bestimmten Speicherort in der Arbeitsmappe. Dieses makro wird verwendet für Arbeitsmappen, die mit einer unterschiedlichen Anzahl von Blättern, so möchte ich es auch weiter kopieren und fügen Sie Arbeitsblätter, bis es nicht mehr Blätter übrig.

Sub Macro()

Dim x As Integer

For x = 3 To Sheets.Count Step 3
    Sheets(x).Select
    Sheets(x).Copy Before:=Sheets(x + 3) 

A bunch more code...

Next

Den makro-offensichtlich läuft aus 3 die Gesamtzahl der Arbeitsblätter, aber da die Gesamtanzahl der Tabellenblätter ändert sich nach jedem Schritt (durch kopieren/einfügen ein Arbeitsblatt), das makro Stoppt, bevor es wieder an das Ende der Arbeitsmappe (ich vermute, weil es den Betrieb Stoppt, wenn der Zähler erreicht den Wert start der Blätter.Zählung). Irgendwelche Vorschläge, wie man das makro weiter bis zum Ende?
Dies ist meine erste Erfahrung, code zu schreiben, so bitte sanft sein 🙂

  • Warum sind Sie kopieren Blätter, anstatt Sie zu bewegen? Dies scheint, wie es wäre einfach aufblasen der Datei keinen wirklichen Zweck...
  • Ich kann nicht jetzt testen (Eingabe von tablet). Sie können möglicherweise verwenden Sie eine rekursive Funktion, oder rufen Sie Graf wieder innerhalb einer while-Schleife verwenden oder eine GOTO-Anweisung. Ich würde versuchen, eine while-Schleife mit while x<nrOfSheets.
InformationsquelleAutor nickalbe | 2014-01-28
Schreibe einen Kommentar