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

Forumthread: Tabellenblatt aus geschlossener Datei kopieren

Tabellenblatt aus geschlossener Datei kopieren
Viktoria
Hallo Leute,
habe eine Frage ist es möglich ein Tabellenblatt aus einer geschlossenen Datei in eine geöffnete Datei zu kopieren. Allerdings kann die Größe der Datei von Woche zu Woche variieren....
Hat irgendjemand einen Vorschlag wie ich das mittels VBA realisieren kann?
Für jegliche Hilfe bin ich sehr sehr dankbar. :)
Liebe Grüße
Anzeige

1
Beitrag zum Forumthread
Beitrag zu diesem Forumthread

Betreff
Benutzer
Anzeige
AW: Tabellenblatt aus geschlossener Datei kopieren
27.04.2010 08:37:39
Hajo_Zi
Hallo Viktoria,
in VBA ist fast alles möglich aber sehr aufwendig. Da bist Du mit öffnen schneller.

Anzeige
Anzeige
Anzeige

Infobox / Tutorial

Tabellenblatt aus geschlossener Datei kopieren


Schritt-für-Schritt-Anleitung

Um ein Tabellenblatt aus einer geschlossenen Excel-Datei in eine geöffnete Datei zu kopieren, kannst Du VBA (Visual Basic for Applications) verwenden. Hier ist eine einfache Schritt-für-Schritt-Anleitung:

  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. Füge den folgenden Code in das Modul ein:

    Sub KopiereTabellenblatt()
       Dim Quelle As Workbook
       Dim Ziel As Workbook
       Dim Blattname As String
    
       ' Hier den Pfad zur geschlossenen Datei eingeben
       Set Quelle = Workbooks.Open("C:\Pfad\zur\DeinerDatei.xlsx")
    
       ' Hier den Namen des zu kopierenden Blattes eingeben
       Blattname = "NameDesBlattes"
    
       ' Aktuelles Ziel-Workbook setzen
       Set Ziel = ThisWorkbook
    
       ' Blatt kopieren
       Quelle.Sheets(Blattname).Copy After:=Ziel.Sheets(Ziel.Sheets.Count)
    
       ' Geschlossene Datei schließen
       Quelle.Close SaveChanges:=False
    End Sub
  4. Passe den Pfad zur geschlossenen Datei sowie den Blattnamen an.

  5. Schließe den VBA-Editor und führe das Makro aus, indem Du ALT + F8 drückst, das Makro auswählst und auf Ausführen klickst.


Häufige Fehler und Lösungen

  • Fehler: "Datei nicht gefunden"
    Lösung: Überprüfe den angegebenen Pfad zur Datei. Achte darauf, dass der Pfad korrekt eingegeben ist und die Datei existiert.

  • Fehler: "Blattname nicht gefunden"
    Lösung: Stelle sicher, dass der Blattname richtig geschrieben ist und in der geschlossenen Datei vorhanden ist.


Alternative Methoden

Wenn Du keine VBA-Programmierung verwenden möchtest, kannst Du die geschlossene Datei auch manuell öffnen und das gewünschte Tabellenblatt kopieren. Das geht schneller, wenn die Datei nicht zu groß ist und Du die Daten nur gelegentlich benötigst.

  1. Öffne die geschlossene Datei.
  2. Klicke mit der rechten Maustaste auf das Tabellenblatt, das Du kopieren möchtest.
  3. Wähle Verschieben oder Kopieren... und wähle das Ziel-Workbook aus.

Praktische Beispiele

Nehmen wir an, Du hast eine geschlossene Datei mit dem Namen Bericht.xlsx und möchtest das Tabellenblatt Umsatz in Deine offene Datei kopieren. Der VBA-Code könnte dann so aussehen:

Sub KopiereUmsatzTabellenblatt()
    Dim Quelle As Workbook
    Dim Ziel As Workbook
    Dim Blattname As String

    Set Quelle = Workbooks.Open("C:\Pfad\zur\Bericht.xlsx")
    Blattname = "Umsatz"
    Set Ziel = ThisWorkbook

    Quelle.Sheets(Blattname).Copy After:=Ziel.Sheets(Ziel.Sheets.Count)
    Quelle.Close SaveChanges:=False
End Sub

Tipps für Profis

  • Verwende Fehlerbehandlung: Integriere On Error Resume Next und On Error GoTo 0 in Deinen VBA-Code, um mögliche Fehler abzufangen.
  • Parameter anpassen: Erstelle eine benutzerdefinierte Funktion, die den Dateipfad und den Blattnamen als Parameter übergeben kann, um die Wiederverwendbarkeit zu erhöhen.
  • Dokumentation: Dokumentiere Deinen VBA-Code, damit Du später leichter nachvollziehen kannst, was jeder Abschnitt bewirken soll.

FAQ: Häufige Fragen

1. Kann ich auch mehrere Tabellenblätter auf einmal kopieren?
Ja, Du kannst eine Schleife in Deinem VBA-Code verwenden, um mehrere Blätter nacheinander zu kopieren.

2. Funktioniert das auch in Excel Online?
VBA wird in Excel Online nicht unterstützt. Du musst die Desktop-Version von Excel verwenden, um diese Funktionalität zu nutzen.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige