Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: Tabellenblätter in einem Untereinander kopieren

Tabellenblätter in einem Untereinander kopieren
Maris
Hallo Leute,
ist das möglich über eine Excelfunktion. Ich habe 20 Tabellenblatter... Die alle andere Überschriften haben aber immer ab Zeile 20 beginnen jedoch verschieden lang sind in ein Tabellenblatt untereinander zu kopieren mit den richtigen Formaten aus dem Ursprungstabellenblatt!
Gruß
maris
Anzeige

3
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Benutzer
Anzeige
AW: Tabellenblätter in einem Untereinander kopieren
22.11.2010 15:48:09
JogyB
Hallo Maris,
gibt es eine Spalte, die immer bis zum Ende befüllt ist? Wenn ja, welche? Und verstehe ich das richtig, dass immer ab Zeile 20 kopiert werden soll?
Gruß, Jogy
AW: Tabellenblätter in einem Untereinander kopieren
22.11.2010 15:51:46
Maris
Hi Jogi,
es ist immer Spalte A...
gruß
MAris
AW: Tabellenblätter in einem Untereinander kopieren
22.11.2010 16:09:21
JogyB
Hallo Maris,
probier das mal:
Sub copyAllinOne()
Dim zielWsh As Worksheet
Dim quellWsh As Worksheet
Application.ScreenUpdating = False
With ActiveWorkbook
' Neues Blatt für die Zusammenfassung
Set zielWsh = .Sheets.Add(, .Sheets(.Sheets.Count))
' Daten kopieren
For Each quellWsh In .Worksheets
With quellWsh
.Range(.Cells(20, 1), .Cells(Rows.Count, 1).End(xlUp)).EntireRow.Copy _
zielWsh.Cells(Rows.Count, 1).End(xlUp).Offset(1)
End With
Next
' Das hat jetzt mit dem Kopieren in Zeile 2 begonnen, also Zeile 1 noch raus
zielWsh.Rows(1).Delete
End With
Application.ScreenUpdating = True
End Sub

Gruß, Jogy
Anzeige

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige

Infobox / Tutorial

Tabellenblätter untereinander kopieren in Excel


Schritt-für-Schritt-Anleitung

Um mehrere Tabellenblätter in ein Tabellenblatt zu kopieren, kannst Du die folgende VBA-Makro-Lösung verwenden. Diese Methode ermöglicht es Dir, alle Daten ab Zeile 20 untereinander in einem neuen Blatt zusammenzufassen, ohne dass Du manuell eingreifen musst.

  1. Öffne Excel und drücke ALT + F11, um den VBA-Editor zu öffnen.

  2. Klicke auf Einfügen und wähle Modul, um ein neues Modul zu erstellen.

  3. Kopiere den folgenden Code in das Modul:

    Sub copyAllinOne()
       Dim zielWsh As Worksheet
       Dim quellWsh As Worksheet
       Application.ScreenUpdating = False
       With ActiveWorkbook
           ' Neues Blatt für die Zusammenfassung
           Set zielWsh = .Sheets.Add(, .Sheets(.Sheets.Count))
           ' Daten kopieren
           For Each quellWsh In .Worksheets
               With quellWsh
                   .Range(.Cells(20, 1), .Cells(Rows.Count, 1).End(xlUp)).EntireRow.Copy _
                   zielWsh.Cells(Rows.Count, 1).End(xlUp).Offset(1)
               End With
           Next
           ' Das hat jetzt mit dem Kopieren in Zeile 2 begonnen, also Zeile 1 noch raus
           zielWsh.Rows(1).Delete
       End With
       Application.ScreenUpdating = True
    End Sub
  4. Schließe den VBA-Editor und gehe zurück zu Excel.

  5. Drücke ALT + F8, wähle copyAllinOne und klicke auf Ausführen.

Nun sollten alle Tabellenblätter ab Zeile 20 untereinander in einem neuen Tabellenblatt angezeigt werden.


Häufige Fehler und Lösungen

  • Fehler: "Der Bereich ist leer"

    • Lösung: Stelle sicher, dass die Daten in den Quell-Tabellenblättern ab Zeile 20 korrekt eingegeben sind. Wenn keine Daten vorhanden sind, kann das Makro nicht kopieren.
  • Fehler: "Der Arbeitsbereich kann nicht gefunden werden"

    • Lösung: Überprüfe, ob alle Tabellenblätter in der Arbeitsmappe vorhanden sind und keine ausgeblendeten Blätter existieren, die das Makro stören könnten.

Alternative Methoden

Falls Du kein Makro verwenden möchtest, gibt es auch die Möglichkeit, die Daten manuell zu kopieren:

  1. Öffne das erste Tabellenblatt und markiere die gewünschten Zellen ab Zeile 20.
  2. Kopiere die Zellen mit Strg + C.
  3. Gehe zum Ziel-Tabellenblatt und füge die Daten mit Strg + V ein.
  4. Wiederhole diesen Vorgang für alle Tabellenblätter.

Diese Methode eignet sich für kleinere Datenmengen, kann jedoch zeitaufwendig sein.


Praktische Beispiele

Angenommen, Du hast folgende Tabellenblätter: "Januar", "Februar", "März". Jedes Blatt enthält Verkaufsdaten ab Zeile 20. Mit dem oben genannten Makro kannst Du alle Daten in ein neues Blatt namens "Zusammenfassung" kopieren. So hast Du eine zentrale Übersicht über Deine Verkaufszahlen.


Tipps für Profis

  • Speichere Deine Arbeitsmappe regelmäßig, bevor Du Makros ausführst, um Datenverluste zu vermeiden.
  • Experimentiere mit Anpassungen im VBA-Code, um z.B. nur bestimmte Spalten zu kopieren oder das Format der kopierten Daten zu ändern.
  • Nutze die Möglichkeit, mehrere Tabellenblätter in ein Tabellenblatt zu kopieren, um Berichte effizient zu erstellen.

FAQ: Häufige Fragen

1. Kann ich das Makro auch ohne VBA verwenden? Ja, Du kannst die Daten manuell kopieren, jedoch ist das Makro für große Datenmengen effizienter.

2. Funktioniert das Makro in allen Excel-Versionen? Das Makro sollte in den meisten modernen Excel-Versionen funktionieren, jedoch ist es immer gut, die Kompatibilität zu überprüfen.

3. Gibt es eine Möglichkeit, die kopierten Daten automatisch zu aktualisieren? Ja, Du kannst das Makro anpassen, um es automatisch auszuführen, wenn die Daten in den Quell-Tabellenblättern geändert werden.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige