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

Forumthread: Inhalt automatisch in neues Tabellenblatt kopieren

Inhalt automatisch in neues Tabellenblatt kopieren
24.11.2005 15:33:13
Oli
Hallo zusammen,
ich habe 2 Tabellenblätter in denen fast das gleiche steht. ich möchte jetzt, dass wenn ich im ersten Tabellenblatt etwas ändere, z.b. eine neue Zeile einfügen, das die neue Zeile dann auch im Tabellenblatt 2 eingefügt wird.
Wie geht das? Oder muss ich das zwangsläufig mit einem Makro machen? und wenn ja, wie geht das?
Anzeige

4
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Inhalt automatisch in neues Tabellenblatt kopi
24.11.2005 18:06:29
ChrisL
Hallo Oli
Sowieso mit Makro/VBA, jedoch lässt sich die Zellen-Änderung zwar feststellen (Worksheet_Change Ereignis), aber für das "Zeilen einfügen" gibt es kein richtiges Ereignis.
Möglich wäre einen ganzen Tabellenbereich zu kopieren, ausgelöst durch ein Worksheet_Activate Ereignis d.h. erst kopieren wenn auf Tabelle2 gewechselt wird. Hat zudem den Vorteil, dass nicht laufend Daten auf Tabelle2 nachgetragen werden müssen, sondern lediglich 1mal beim Wechsel.
Gruss
Chris
Anzeige
AW: Inhalt automatisch in neues Tabellenblatt kopi
25.11.2005 09:03:35
Oli
Hallo Christian,
deine Variante würde mir schon reichen. Aber wie mache ich das? ich müsste von Tabellenblatt 1 die Spalte "A" und "B" zu Tabellenblatt 2 transferieren!
AW: Inhalt automatisch in neues Tabellenblatt kopi
25.11.2005 09:54:57
ChrisL
Hi Oli
Rechte Maustaste auf Tabelle2, Code anzeigen, Code reinkopieren:

Private Sub Worksheet_Activate()
Dim WS1 As Worksheet, WS2 As Worksheet
Set WS1 = Worksheets("Tabelle1")
Set WS2 = Worksheets("Tabelle2")
Application.ScreenUpdating = False
WS1.Columns("A:B").Copy WS2.Range("A1")
Application.ScreenUpdating = True
End Sub

Gruss
Chris
Anzeige
AW: Inhalt automatisch in neues Tabellenblatt kopi
25.11.2005 10:06:34
Oli
Danke. Ich werde es ausprobieren und meine Erfahrungen schildern!

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige
Anzeige

Infobox / Tutorial

Inhalte automatisch in neues Tabellenblatt kopieren


Schritt-für-Schritt-Anleitung

Um Excel-Daten automatisch in andere Tabellen zu kopieren, kannst du ein einfaches VBA-Makro verwenden. Hier ist eine Schritt-für-Schritt-Anleitung:

  1. Öffne deine Excel-Datei mit den beiden Tabellenblättern (z.B. "Tabelle1" und "Tabelle2").

  2. Klicke mit der rechten Maustaste auf das zweite Tabellenblatt ("Tabelle2") und wähle "Code anzeigen".

  3. Füge den folgenden VBA-Code in das Codefenster ein:

    Private Sub Worksheet_Activate()
       Dim WS1 As Worksheet, WS2 As Worksheet
       Set WS1 = Worksheets("Tabelle1")
       Set WS2 = Worksheets("Tabelle2")
       Application.ScreenUpdating = False
       WS1.Columns("A:B").Copy WS2.Range("A1")
       Application.ScreenUpdating = True
    End Sub
  4. Schließe den VBA-Editor und gehe zurück zu deinem Excel-Dokument.

  5. Wechsel zu Tabelle2, um die Daten aus Tabelle1 zu aktualisieren.

Mit diesem Makro kannst du Excel-Daten aus einer anderen Tabelle automatisch übernehmen, sobald du zu Tabelle2 wechselst.


Häufige Fehler und Lösungen

  • Fehler: "Das Makro kann nicht ausgeführt werden."

    • Lösung: Stelle sicher, dass Makros in deiner Excel-Anwendung aktiviert sind. Gehe zu "Datei" -> "Optionen" -> "Trust Center" -> "Einstellungen für das Trust Center" und aktiviere die Makros.
  • Fehler: Daten werden nicht kopiert.

    • Lösung: Überprüfe, ob die Namen der Arbeitsblätter ("Tabelle1" und "Tabelle2") korrekt sind. Diese müssen exakt mit den Namen in deinem Excel-Dokument übereinstimmen.

Alternative Methoden

Wenn du keine VBA-Makros verwenden möchtest, gibt es alternative Methoden, um Excel-Daten automatisch in andere Tabellen zu kopieren:

  • Verwende die Funktion VERWEIS oder SVERWEIS: Damit kannst du Daten aus einer anderen Tabelle übernehmen, allerdings ist das nicht ganz so dynamisch.
  • Verknüpfte Zellen: Du kannst Zellen in Tabelle2 direkt mit Zellen in Tabelle1 verknüpfen, indem du in Tabelle2 =Tabelle1!A1 eingibst.

Diese Methoden sind jedoch weniger automatisiert als die Verwendung von VBA.


Praktische Beispiele

  1. Beispiel für das Kopieren von Werten: Wenn du in Tabelle1 in den Zellen A1 bis B10 Daten hast, wird durch das obige Makro alles in Tabelle2 ab A1 eingefügt.

  2. Anpassung des Codes: Wenn du nur bestimmte Zeilen oder Spalten kopieren möchtest, ändere den Bereich im Code, beispielsweise WS1.Range("A1:B10").Copy WS2.Range("A1").


Tipps für Profis

  • Nutze Fehlerbehandlung im Code: Um sicherzustellen, dass dein Makro auch bei unerwarteten Fehlern nicht abstürzt, füge eine Fehlerbehandlungsroutine hinzu.

    On Error GoTo ErrorHandler
    ' Dein Code hier
    Exit Sub
    ErrorHandler:
       MsgBox "Ein Fehler ist aufgetreten!"
  • Automatisiere das Makro: Du kannst das Makro auch so anpassen, dass es beim Öffnen der Datei oder nach bestimmten Zeitintervallen ausgeführt wird.


FAQ: Häufige Fragen

1. Wie kann ich das Makro für alle Zeilen in Tabelle1 anpassen? Um alle Zeilen zu kopieren, ändere WS1.Columns("A:B").Copy WS2.Range("A1") zu WS1.UsedRange.Copy WS2.Range("A1").

2. Kann ich das Makro auch für andere Excel-Versionen verwenden? Ja, das VBA-Makro sollte in den meisten Excel-Versionen (ab Excel 2007) funktionieren. Stelle sicher, dass du die VBA-Entwicklerumgebung kennst, um Anpassungen vorzunehmen.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige