Live-Forum - Die aktuellen Beiträge
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Mehrere Arbeitsblätter exportieren

Forumthread: Mehrere Arbeitsblätter exportieren

Mehrere Arbeitsblätter exportieren
19.05.2005 07:33:19
Werner
Hallo zusammen!
Folgender Code soll so erweitert werden, dass nicht nur EIN Arbeitsblatt exportiert wird, sondern 3:

Sub datensichern()
Dim dlg As FileDialog
Sheets("Speicher").Select
ActiveSheet.Copy
Set dlg = Application.FileDialog(msoFileDialogSaveAs) 'Datei wählen
With dlg
.InitialFileName = ActiveSheet.Name & ".xls"
.InitialView = msoFileDialogViewDetails 'Anzeige des Dialogs - die Dateien als Thumbnail
.Title = "Speicherinhalt sichern" 'Titel
End With
If dlg.Show = True Then
ActiveWorkbook.SaveAs Filename:=dlg.SelectedItems(1)
ActiveWorkbook.Close
End If
End Sub

Die 3 Arbeitsblätter beinhalten Daten, die in einer separaten Datei gesichert werden sollen.
Sowas ist doch bestimmt machbar?
Viele Grüße
Werner
Anzeige

2
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Mehrere Arbeitsblätter exportieren
19.05.2005 07:46:41
Matthias
Hallo Werner,
statt
Sheets("Speicher").Select
Activesheet.Copy
schreibe:
Sheets(Array("Tabelle1","Tabelle2","Tabelle3")).Copy
die Blattnamen noch anpassen.
Gruß Matthias
AW: Mehrere Arbeitsblätter exportieren
19.05.2005 07:52:12
Werner
Einwandfrei!!!
Vielen dank, Matthias!
Ich glaube, ich muss dringend einen VBA-Lehrgang absolvieren. :-)
Bis dann!
Werner
Anzeige
;
Anzeige

Infobox / Tutorial

Mehrere Arbeitsblätter in Excel exportieren


Schritt-für-Schritt-Anleitung

Um mehrere Arbeitsblätter in Excel zu exportieren, kannst Du den folgenden VBA-Code verwenden. Dieser Code ermöglicht es Dir, drei spezifische Arbeitsblätter in einer neuen Datei zu speichern.

  1. Öffne Excel und drücke ALT + F11, um den VBA-Editor zu öffnen.
  2. Wähle im Menü Einfügen > Modul, um ein neues Modul zu erstellen.
  3. Füge den folgenden Code in das Modul ein:
Sub datensichern()
    Dim dlg As FileDialog
    Set dlg = Application.FileDialog(msoFileDialogSaveAs) 'Dialog zum Speichern öffnen
    Sheets(Array("Tabelle1", "Tabelle2", "Tabelle3")).Copy 'Arbeitsblätter kopieren
    With dlg
        .InitialFileName = "Exportierte_Daten.xls"
        .Title = "Speicherinhalt sichern"
    End With
    If dlg.Show = True Then
        ActiveWorkbook.SaveAs Filename:=dlg.SelectedItems(1) 'Datei speichern
        ActiveWorkbook.Close
    End If
End Sub
  1. Passe die Blattnamen in Array("Tabelle1", "Tabelle2", "Tabelle3") nach Bedarf an.
  2. Schließe den VBA-Editor und führe das Makro aus, um die Arbeitsblätter zu exportieren.

Häufige Fehler und Lösungen

  • Fehler: "Laufzeitfehler 9: Index außerhalb des gültigen Bereichs"

    • Lösung: Überprüfe die Namen der Arbeitsblätter im Array. Stelle sicher, dass sie genau übereinstimmen.
  • Fehler: Dialog öffnet sich nicht

    • Lösung: Stelle sicher, dass Du die richtigen Berechtigungen hast und dass Excel nicht im Hintergrund läuft.

Alternative Methoden

Wenn Du keine VBA-Makros verwenden möchtest, kannst Du auch die folgenden Methoden nutzen:

  • Manuelles Kopieren: Markiere die gewünschten Arbeitsblätter mit STRG + Mausklick und klicke dann mit der rechten Maustaste auf einen der Blätter und wähle "Kopieren" aus. Wähle danach eine neue Arbeitsmappe aus, um die Blätter dort einzufügen.

  • Exportieren als PDF: Wenn Du die Blätter nur als PDF benötigen, kannst Du die Arbeitsblätter auswählen und dann über Datei > Drucken > Microsoft Print to PDF drucken.


Praktische Beispiele

  • Beispiel 1: Exportiere die Blätter "Umsatz", "Kosten" und "Gewinn" mit dem gegebenen VBA-Code.

  • Beispiel 2: Wenn Du mehr als drei Blätter exportieren möchtest, kannst Du die Anzahl im Array erhöhen, z. B. Array("Blatt1", "Blatt2", "Blatt3", "Blatt4").


Tipps für Profis

  • Fehlerbehandlung einbauen: Füge Fehlerbehandlungsroutinen in Deinen VBA-Code ein, um unerwartete Probleme eleganter zu lösen.

  • Dynamische Blattnamen: Wenn sich die Blattnamen häufig ändern, kannst Du die Namen dynamisch ermitteln, z. B. durch Schleifen über die Blätter und Filterung nach bestimmten Kriterien.


FAQ: Häufige Fragen

1. Kann ich mehr als drei Arbeitsblätter gleichzeitig exportieren?
Ja, Du kannst die Anzahl der Arbeitsblätter im Array nach Bedarf erhöhen.

2. Funktioniert dieser Code in Excel 2016 und 2019?
Ja, der VBA-Code ist mit Excel 2016 und 2019 kompatibel. Achte darauf, dass Makros aktiviert sind.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige