Excel VBA: Blätter mehrfach kopieren, umbenennen und ausfüllen
Schritt-für-Schritt-Anleitung
Um in Excel ein Arbeitsblatt mehrfach zu kopieren, umbenennen und ausfüllen, kannst Du das folgende VBA-Skript verwenden. Das Skript nimmt die Namen aus dem Bereich C26:C36 des Blattes "!!Steuerung!" und erstellt für jeden Eintrag eine Kopie des Blattes "!Vorlage!". Diese Kopien werden dann umbenannt und der Name wird in die Zelle A11 geschrieben.
- Öffne Deine Excel-Datei und drücke
ALT + F11
, um den VBA-Editor zu öffnen.
- Klicke auf
Einfügen
und wähle Modul
, um ein neues Modul zu erstellen.
- Kopiere den folgenden Code in das Modul:
Sub kopieren()
Dim rngC As Range
Application.ScreenUpdating = False
For Each rngC In Sheets("!!Steuerung").Range("C26:C36")
If rngC <> "" Then
Sheets("!vorlage!").Copy after:=Sheets(Sheets.Count)
With ActiveSheet
.Name = rngC
.Range("A11") = rngC
.Visible = xlSheetVisible
End With
End If
Next
Application.ScreenUpdating = True
End Sub
- Schließe den VBA-Editor und kehre zu Excel zurück.
- Führe das Makro aus, indem Du auf
Entwicklertools
> Makros
klickst und das Makro kopieren
auswählst.
Häufige Fehler und Lösungen
-
Fehlernummer 1004: Dieser Fehler tritt auf, wenn Du versuchst, zu viele Blätter in einer Arbeitsmappe zu erstellen. Die maximale Anzahl an Blättern hängt von der Größe der Blätter ab. Eine Lösung ist es, die Arbeitsmappe zu speichern und zu schließen, bevor Du es erneut versuchst.
-
Kopierte Blätter sind ausgeblendet: Wenn die kopierten Blätter nicht sichtbar sind, stelle sicher, dass Du ActiveSheet.Visible = xlSheetVisible
im Code hast, um die Sichtbarkeit sicherzustellen.
Alternative Methoden
Wenn Du die Blätter nicht via VBA, sondern direkt in Excel kopieren möchtest, kannst Du die folgenden Schritte ausführen:
- Wähle das Blatt, das Du kopieren möchtest.
- Halte die
Strg
-Taste gedrückt und ziehe das Blatt auf die gewünschte Position.
- Das Blatt wird in der gewünschten Position als Kopie erstellt. Du kannst den Namen manuell ändern.
Praktische Beispiele
Angenommen, Du hast in Deinem Steuerungsblatt die Namen "Hund", "Katze", "Haus" und "Auto". Wenn Du den obigen Code ausführst, werden für diese vier Namen jeweils ein neues Blatt erstellt und in Zelle A11 wird der entsprechende Name eingetragen. So hast Du schnell und effektiv Deine Excel-Tabelle mehrfach kopiert und ausgefüllt.
Tipps für Profis
- Überprüfe immer, ob die Blätter, die Du kopierst, nicht bereits existieren. Du kannst dies durch eine einfache If-Bedingung im Code machen.
- Verwende
Application.DisplayAlerts = False
, um die Bestätigungsdialoge beim Umbenennen von Blättern zu deaktivieren.
- Teste den Code z.B. mit einer kleinen Anzahl von Blättern, bevor Du ihn auf größere Datenmengen anwendest.
FAQ: Häufige Fragen
1. Wie viele Blätter kann ich maximal in Excel erstellen?
Die maximale Anzahl an Blättern in einer Excel-Arbeitsmappe hängt von der Größe der Blätter ab. In der Regel können mehrere hundert bis tausend Blätter erstellt werden, solange der Speicherplatz es zulässt.
2. Was passiert, wenn ich einen bestehenden Blattnamen verwenden möchte?
Wenn Du versuchst, einen existierenden Blattnamen zu verwenden, wird Excel einen Fehler ausgeben. Du solltest sicherstellen, dass die Namen, die Du verwendest, eindeutig sind.
3. Kann ich den Code anpassen, um andere Zellen zu befüllen?
Ja, Du kannst die Zelle, die im Code beschrieben ist (.Range("A11")
), anpassen, um andere Zellen in den kopierten Blättern zu befüllen.