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

Forumthread: Von Excel in Word -> als PDF speichern mit VBA?

Von Excel in Word -> als PDF speichern mit VBA?
06.07.2016 08:16:23
Zoe
Hallo,
ich habe ein eine Grafik die aus Excel per Makro in Word (Seite im Querformat) exportiert wird, auf das nächste Blatt wird (Seite im Hochformat) die zugehörige Tabelle exportiert.
Ich hätte das alles allerdings gerne als PDF ist s möglich das gleich als PDF zu machen oder automatisch von Word in ein PDF zu speichern, das das PDF gleich aufpoppt?
Viele Grüße,
Zoe
Sub CPChart()
Dim wkb As Workbook
Dim wordApp As Object
Dim WordObj As Object
Dim WordDoc As Object
Set wkb = ActiveWorkbook
Sheets("export_file").Unprotect ("abcde")
Sheets("export_file").ChartObjects("EMA_Auswertung").Activate
ActiveChart.ChartArea.Select
ActiveChart.ChartArea.Copy
Set wordApp = CreateObject("word.application")
With wordApp
.Visible = True
.Documents.Add
.ActiveDocument.PageSetup.Orientation = 1
.Selection.Paste
'Größe des eingefügten Diagramm-Bildes anpassen
With .ActiveDocument.InlineShapes(1) 'evtl. .Shapes(1)
.LockAspectRatio = msoTrue
.Width = Application.CentimetersToPoints(26) 'Breite = 26 cm
End With
'Absatzschaltung einfügen
.Selection.TypeParagraph
'Seitenumbruch einfügen
.Selection.InsertBreak Type:=3 '3 = dwSectionBreakContinuous
.Selection.PageSetup.Orientation = 0
'Excel-Zellbereich kopieren und in Word als Tabelle einfügen
wkb.Worksheets("export_file").Range(Worksheets("export_file").Cells(1, 30),  _
Worksheets("export_file").Cells(Worksheets("export_file").Range("AB2").Value + 2, Worksheets("export_file").Range("AA3").Value + 32)).Copy
.Selection.PasteSpecial Link:=True
Application.CutCopyMode = False
Set WordObj = Nothing
Set WordDoc = Nothing
End With
Sheets("export_file").Protect ("abcde")
End Sub

Anzeige

1
Beitrag zum Forumthread
Beitrag zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Von Excel in Word -> als PDF speichern mit VBA?
06.07.2016 09:01:26
JoWE
Hallo Zoe,
so z.B.
.ActiveDocument.ExportAsFixedFormat Outputfilename:="DeinDateiname.pdf", _
ExportFormat:=wdExportFormatPDF, OpenAfterExport:=True, _
OptimizeFor:=wdExportOptimizeForPrint, Range:= _
wdExportAllDocument, Item:=wdExportDocumentContent, _
IncludeDocProps:=True, KeepIRM:=True, CreateBookmarks:= _
wdExportCreateNoBookmarks, DocStructureTags:=True, _
BitmapMissingFonts:=True, UseISO19005_1:=False
Gruß
Jochen
Anzeige

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige
Anzeige
Anzeige

Infobox / Tutorial

Excel-Grafiken und Tabellen in Word als PDF speichern


Schritt-für-Schritt-Anleitung

Um ein Excel-Diagramm und eine Tabelle in ein Word-Dokument zu exportieren und anschließend als PDF zu speichern, kannst du das folgende VBA-Skript verwenden. Diese Anleitung geht davon aus, dass du Excel 2016 oder eine neuere Version verwendest.

  1. Öffne Excel und lade die Arbeitsmappe mit dem Diagramm und der Tabelle.
  2. Drücke ALT + F11, um den VBA-Editor zu öffnen.
  3. Füge ein neues Modul hinzu: Rechtsklick auf "VBAProject (DeinWorkbookName)" > Einfügen > Modul.
  4. Kopiere den folgenden VBA-Code in das Modul:
Sub CPChart()
    Dim wkb As Workbook
    Dim wordApp As Object
    Dim WordObj As Object
    Dim WordDoc As Object
    Set wkb = ActiveWorkbook
    Sheets("export_file").Unprotect ("abcde")
    Sheets("export_file").ChartObjects("EMA_Auswertung").Activate
    ActiveChart.ChartArea.Select
    ActiveChart.ChartArea.Copy
    Set wordApp = CreateObject("word.application")
    With wordApp
        .Visible = True
        .Documents.Add
        .ActiveDocument.PageSetup.Orientation = 1
        .Selection.Paste
        'Größe des eingefügten Diagramm-Bildes anpassen
        With .ActiveDocument.InlineShapes(1)
            .LockAspectRatio = msoTrue
            .Width = Application.CentimetersToPoints(26)
        End With
        .Selection.TypeParagraph
        .Selection.InsertBreak Type:=3
        .Selection.PageSetup.Orientation = 0
        wkb.Worksheets("export_file").Range(Worksheets("export_file").Cells(1, 30), _
        Worksheets("export_file").Cells(Worksheets("export_file").Range("AB2").Value + 2, Worksheets("export_file").Range("AA3").Value + 32)).Copy
        .Selection.PasteSpecial Link:=True
        Application.CutCopyMode = False

        'PDF speichern
        .ActiveDocument.ExportAsFixedFormat Outputfilename:="DeinDateiname.pdf", _
        ExportFormat:=wdExportFormatPDF, OpenAfterExport:=True, _
        OptimizeFor:=wdExportOptimizeForPrint, Range:=wdExportAllDocument, _
        Item:=wdExportDocumentContent, IncludeDocProps:=True, _
        KeepIRM:=True, CreateBookmarks:=wdExportCreateNoBookmarks, _
        DocStructureTags:=True, BitmapMissingFonts:=True, _
        UseISO19005_1:=False
    End With
    Sheets("export_file").Protect ("abcde")
End Sub
  1. Ändere "DeinDateiname.pdf" in den gewünschten Dateinamen.
  2. Schließe den VBA-Editor und führe das Makro aus (ALT + F8 und wähle CPChart).

Häufige Fehler und Lösungen

  • Fehler: "Das Diagramm kann nicht kopiert werden."

    • Stelle sicher, dass das Diagramm auf dem aktiven Blatt sichtbar ist und dass es korrekt benannt ist.
  • Fehler: "Word konnte nicht gestartet werden."

    • Überprüfe, ob Microsoft Word korrekt installiert und lizenziert ist.
  • Fehler: PDF wird nicht geöffnet.

    • Stelle sicher, dass die Option OpenAfterExport auf True gesetzt ist.

Alternative Methoden

Wenn du keine VBA-Programmierung verwenden möchtest, kannst du auch manuell vorgehen:

  1. Kopiere das Excel-Diagramm und die Tabelle.
  2. Öffne Word und füge die Inhalte ein.
  3. Gehe zu "Datei" > "Speichern unter" und wähle PDF als Dateiformat.

Eine weitere Möglichkeit ist die Verwendung von Add-Ins, die das Exportieren von Excel-Daten in PDF-Dateien automatisieren können.


Praktische Beispiele

Hier sind einige Anwendungsbeispiele:

  • Excel-Diagramm als PDF speichern: Du kannst das Diagramm direkt aus Excel exportieren, indem du die Option "Exportieren" oder "Speichern unter" wählst und PDF als Format auswählst.

  • Word-Dokument als PDF speichern: Wenn du ein Word-Dokument hast, das Excel-Daten enthält, kannst du einfach zu "Datei" > "Exportieren" > "PDF/XPS-Dokument erstellen" gehen.


Tipps für Profis

  • Optimiere dein PDF für den Druck, indem du OptimizeFor:=wdExportOptimizeForPrint im VBA-Code verwendest.
  • Verwende Bookmark-Funktionen, um deine PDF-Dateien besser zu strukturieren.
  • Teste dein Makro in einer sicheren Umgebung, bevor du es in produktiven Arbeitsmappen ausführst.

FAQ: Häufige Fragen

1. Wie speichere ich eine Excel-Tabelle als PDF?
Du kannst dies direkt in Excel tun, indem du "Datei" > "Speichern unter" wählst und PDF als Format auswählst.

2. Kann ich mehrere Excel-Diagramme gleichzeitig in Word exportieren?
Ja, du kannst das VBA-Skript anpassen, um mehrere Diagramme in einer Schleife zu exportieren.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige