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

Aus VBA PDF Dokumente öffnen und drucken

Forumthread: Aus VBA PDF Dokumente öffnen und drucken

Aus VBA PDF Dokumente öffnen und drucken
11.03.2004 11:21:42
Jens K.
Hallo,
ich benötige eure Hilfe,
ich möchte aus Excel heraus eine PDF Dateien die auf der Festplatte lokal liegt öffnen und dann den Druckoutput anstoßen.
Ist dieses möglich ?
Wenn ja, muß das Dokument in Excel eingebettet werden.
Wer kann mir den VBA Code liefern.
Super vielen Dank im voraus.
Anzeige

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

Betreff
Datum
Anwender
Anzeige
AW: Aus VBA PDF Dokumente öffnen und drucken
11.03.2004 11:45:22
Jens K.
Hallo Andreas,
super vielen Dank.
Mein Code sieht jetzt so aus:
rivate Declare

Function URLDownloadToFile Lib "urlmon" Alias "URLDownloadToFileA" (ByVal pCaller As Long, ByVal szURL$, ByVal szFileName$, ByVal dwReserved As Long, ByVal lpfnCB As Long) As Long
Public Declare 

Function ShellExecute Lib "shell32.dll" Alias "ShellExecuteA" (ByVal hwnd As Long, ByVal lpOperation As String, ByVal lpFile As String, ByVal lpParameters As String, ByVal lpDirectory As String, ByVal nShowCmd As Long) As Long

Sub pdf()
Product = "V:\Test.pdf"
ShellExecute 0, "open", Product, "", "", SHOWMAXIMIZED
ShellExecute 0, "print", Product, "", "", SHOWMAXIMIZED
ShellExecute 0, "exit", Product, "", "", SHOWMAXIMIZED
End Sub

Wie kann ich jetzt noch acrobat schließen bzw. einen anderen Ducker als den Standarddrucker bestimmen.
Hast du da noch einen Rat für mich ?
Anzeige
Nur halbe Antwort
11.03.2004 11:53:58
Andreas Walter
Zuerst:
Die Zeile mit
Function URLDownloadToFile
kannst Du löschen, wenn Du nichts runterladen möchtest.
Acrobat zumachen - weiß ich nicht.
Drucker setzen:
Application.ActivePrinter = "FinePrint pdfFactory auf FPP1:"
Nutz mal Makro Recorder
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige
Anzeige
Entdecke relevante Threads

Schau dir verwandte Threads basierend auf dem aktuellen Thema an

Alle relevanten Threads mit Inhaltsvorschau entdecken
Anzeige

Infobox / Tutorial

PDF-Dokumente aus VBA öffnen und drucken


Schritt-für-Schritt-Anleitung

Um PDF-Dokumente aus Excel mit VBA zu öffnen und zu drucken, kannst du folgenden Code verwenden:

Public Declare Function ShellExecute Lib "shell32.dll" Alias "ShellExecuteA" (ByVal hwnd As Long, ByVal lpOperation As String, ByVal lpFile As String, ByVal lpParameters As String, ByVal lpDirectory As String, ByVal nShowCmd As Long) As Long

Sub pdf()
    Dim Product As String
    Product = "V:\Test.pdf" 'Pfad zur PDF-Datei
    ShellExecute 0, "open", Product, "", "", 1 'PDF öffnen
    ShellExecute 0, "print", Product, "", "", 1 'PDF drucken
End Sub

In diesem Code wird die ShellExecute-Funktion verwendet, um die PDF-Datei zu öffnen und anschließend zu drucken. Achte darauf, dass der Pfad zur PDF-Datei korrekt ist.


Häufige Fehler und Lösungen

  • Konnte PDF nicht öffnen: Wenn du die Fehlermeldung "kann pdf nicht öffnen" erhältst, überprüfe den Pfad zur Datei. Stelle sicher, dass die Datei existiert und der Pfad korrekt angegeben ist.

  • PDF drucken ohne öffnen: Um die PDF zu drucken, ohne sie vorher zu öffnen, kannst du nur den Druckbefehl verwenden:

    ShellExecute 0, "print", Product, "", "", 1
  • Acrobat schließt nicht nach dem Druck: Es gibt keine direkte VBA-Funktion, um Acrobat nach dem Drucken zu schließen. Du kannst jedoch versuchen, das Programm über den Task-Manager zu beenden, was nicht immer optimal ist.


Alternative Methoden

Eine alternative Methode ist die Verwendung von PDF-Druckern wie "Adobe PDF" oder "Microsoft Print to PDF". Diese Drucker ermöglichen es, PDF-Dateien zu drucken, ohne dass die Anwendung geöffnet werden muss. Du kannst den aktiven Drucker wie folgt ändern:

Application.ActivePrinter = "Adobe PDF"

Stelle sicher, dass der gewünschte Drucker auf deinem System installiert ist.


Praktische Beispiele

Hier sind einige praktische Beispiele für das Öffnen und Drucken von PDF-Dateien:

  1. PDF öffnen und drucken:

    Sub OpenAndPrintPDF()
       Dim pdfPath As String
       pdfPath = "C:\DeinPfad\DeineDatei.pdf"
       ShellExecute 0, "open", pdfPath, "", "", 1
       ShellExecute 0, "print", pdfPath, "", "", 1
    End Sub
  2. PDF drucken ohne öffnen:

    Sub PrintPDFWithoutOpening()
       Dim pdfPath As String
       pdfPath = "C:\DeinPfad\DeineDatei.pdf"
       ShellExecute 0, "print", pdfPath, "", "", 1
    End Sub

Mit diesen Beispielen kannst du PDF-Dateien effektiv aus Excel heraus verwalten.


Tipps für Profis

  • Makro Recorder nutzen: Verwende den Makro-Recorder in Excel, um deine Schritte aufzuzeichnen. So kannst du dir selbst helfen, den richtigen Code zu generieren.

  • Drucker wechseln: Du kannst den Drucker in deinem VBA-Code einfach wechseln, um verschiedene PDF-Drucker zu verwenden. Achte darauf, den genauen Namen des Druckers zu verwenden.

  • Fehlermeldungen abfangen: Implementiere Fehlerbehandlungsroutinen, um besser mit unerwarteten Situationen umzugehen.


FAQ: Häufige Fragen

1. Kann ich mehrere PDF-Dateien gleichzeitig drucken?
Ja, du kannst eine Schleife verwenden, um mehrere PDF-Dateien hintereinander zu drucken.

2. Wie kann ich den Standarddrucker ändern?
Du kannst den Standarddrucker mit folgendem Befehl ändern:

Application.ActivePrinter = "Name des Druckers"

3. Gibt es eine Möglichkeit, PDFs mit VBA zu erstellen?
Ja, du kannst VBA in Kombination mit anderen Anwendungen wie Word oder Access verwenden, um PDFs zu erstellen.

4. Was tun, wenn die PDF-Datei nicht gedruckt wird?
Überprüfe, ob der PDF-Drucker korrekt installiert ist und ob der Druckauftrag im Druckwarteschlange angezeigt wird.

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