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

Forumthread: mehrere registerkarten als pdf speichern vba

mehrere registerkarten als pdf speichern vba
29.06.2018 16:52:40
Marcus
Hallo zusammen,
ich bräuchte da mal kurz unterstützung.
Userbild
Ich würde gerne die Registerkarten
- Abweichungsübersicht
- Tägliche Ausbringung Bonden TO
- Lieferzahlen SMD022-070
- Ablieferung an W050
Per knopfdruck an den Pfad
- C:\Users\HMS7RT\Desktop\Daily Wiki
Mit dem Variablen Namen aus N2 und O2 auf Registerkarte Auswertung Wikidaten
speichern.
Bitte um Hilfe.
Lieben Dank allen.
Marcus
Anzeige

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

Betreff
Datum
Anwender
Anzeige
AW: mehrere registerkarten als pdf speichern vba
29.06.2018 17:01:47
Torsten
Hallo Marcus,
besser eine Beispieldatei hochladen als ein schoenes Bild. Dann koennen die Helfer alles gleich in dieser Datei auprobieren.
Danke.
Gruss Torsten
oder
29.06.2018 17:11:26
Hajo_Zi
Du bist im falschen Forum. Bildbearbeitung ist ein anderes Forum.

Beiträge von Werner, Luc, robert, J.O.Maximo und folgende lese ich nicht.
Anzeige
AW: mehrere registerkarten als pdf speichern vba
29.06.2018 17:47:26
Nepumuk
Hallo Marcus,
teste mal:
Option Explicit

Public Sub PDF_drucken()
    Const PDF_FOLDER As String = "C:\Users\HMS7RT\Desktop\Daily Wiki\"
    Dim strFilePath As String
    Dim objActiveSheet As Object
    With Worksheets("Auswertung Wikidaten")
        strFilePath = PDF_FOLDER & .Cells(2, 14).Text & .Cells(2, 15).Text
    End With
    Set objActiveSheet = ActiveSheet
    Call Worksheets(Array("Abweichungsübersicht", "Tägliche Ausbringung Bonden TO", _
        "Lieferzahlen SMD022-070", "Ablieferung an W050")).Select
    Call Worksheets("Abweichungsübersicht").ExportAsFixedFormat(Type:=xlTypePDF, _
        Filename:=strFilePath, Quality:=xlQualityStandard, IncludeDocProperties:=True, _
        IgnorePrintAreas:=False, OpenAfterPublish:=True)
    objActiveSheet.Select
    Set objActiveSheet = Nothing
End Sub

Gruß
Nepumuk
Anzeige
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Entdecke relevante Threads

Schau dir verwandte Threads basierend auf dem aktuellen Thema an

Alle relevanten Threads mit Inhaltsvorschau entdecken
Anzeige
Anzeige

Infobox / Tutorial

Mehrere Registerkarten als PDF speichern mit VBA


Schritt-für-Schritt-Anleitung

Um mehrere Registerkarten in Excel als PDF zu speichern, kannst du den folgenden VBA-Code verwenden. Dieser Code speichert die Registerkarten "Abweichungsübersicht", "Tägliche Ausbringung Bonden TO", "Lieferzahlen SMD022-070" und "Ablieferung an W050" in einem festgelegten Ordner.

  1. Öffne Excel und drücke ALT + F11, um den VBA-Editor zu öffnen.
  2. Klicke im Menü auf Einfügen und wähle Modul, um ein neues Modul zu erstellen.
  3. Füge den folgenden Code in das Modul ein:
Option Explicit

Public Sub PDF_drucken()
    Const PDF_FOLDER As String = "C:\Users\HMS7RT\Desktop\Daily Wiki\"
    Dim strFilePath As String
    Dim objActiveSheet As Object

    With Worksheets("Auswertung Wikidaten")
        strFilePath = PDF_FOLDER & .Cells(2, 14).Text & .Cells(2, 15).Text
    End With

    Set objActiveSheet = ActiveSheet
    Call Worksheets(Array("Abweichungsübersicht", "Tägliche Ausbringung Bonden TO", _
        "Lieferzahlen SMD022-070", "Ablieferung an W050")).Select
    Call Worksheets("Abweichungsübersicht").ExportAsFixedFormat(Type:=xlTypePDF, _
        Filename:=strFilePath, Quality:=xlQualityStandard, IncludeDocProperties:=True, _
        IgnorePrintAreas:=False, OpenAfterPublish:=True)

    objActiveSheet.Select
    Set objActiveSheet = Nothing
End Sub
  1. Schließe den VBA-Editor und gehe zurück zu Excel.
  2. Du kannst das Makro nun über Entwicklertools > Makros ausführen oder einen Button erstellen, um das Skript per Knopfdruck auszuführen.

Häufige Fehler und Lösungen

  • Fehler: "Dateipfad nicht gefunden"
    Überprüfe, ob der angegebene Pfad korrekt ist und ob der Ordner existiert.

  • Fehler: "Makro kann nicht ausgeführt werden"
    Stelle sicher, dass die Makros aktiviert sind. Gehe zu Datei > Optionen > Trust Center > Einstellungen für das Trust Center > Makroeinstellungen.

  • Fehler: "Worksheet not found"
    Überprüfe die Schreibweise der Arbeitsblattnamen im Code und stelle sicher, dass sie genau übereinstimmen.


Alternative Methoden

Falls du keine VBA-Programmierung nutzen möchtest, kannst du die Registerkarten auch manuell als PDF speichern:

  1. Wähle die Registerkarten aus, die du speichern möchtest, indem du Strg gedrückt hältst und auf die gewünschten Registerkarten klickst.
  2. Klicke auf Datei > Drucken.
  3. Wähle Microsoft Print to PDF als Drucker aus.
  4. Klicke auf Drucken und wähle den Speicherort aus.

Praktische Beispiele

Hier ist ein einfaches Beispiel für das Speichern von zwei Registerkarten:

Call Worksheets(Array("Tägliche Ausbringung Bonden TO", "Lieferzahlen SMD022-070")).Select

Du kannst diese Zeile einfach anpassen, um andere Registerkarten auszuwählen, die du speichern möchtest.


Tipps für Profis

  • Nutze die Workbook_BeforeClose-Ereignisprozedur, um das PDF automatisch zu speichern, wenn du die Arbeitsmappe schließt.
  • Verwende Fehlerbehandlungsroutinen in deinem VBA-Code, um unerwartete Fehler effektiv zu handhaben.

FAQ: Häufige Fragen

1. Kann ich auch mehr als vier Registerkarten speichern?
Ja, du kannst die Anzahl der Registerkarten im Array anpassen, um so viele wie nötig zu speichern.

2. Muss ich Excel 2016 oder höher verwenden?
Der bereitgestellte VBA-Code sollte in den meisten neueren Excel-Versionen funktionieren. Es wird jedoch empfohlen, Excel 2016 oder höher zu verwenden, um sicherzustellen, dass alle Funktionen unterstützt werden.

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