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

PDF Datei aus Excel drucken

Forumthread: PDF Datei aus Excel drucken

PDF Datei aus Excel drucken
25.08.2004 21:14:45
Zwergel
Hallo,

ich habe hier im Forums-Archiv einen Beitrag gefunden, der ein ähnliches Problem beschreibt. Dort wird eine Downloaddatei aus dem web geladen und dann ausgedruckt.
Ich komme mit der Umsetzung des dortigen Codes nicht klar.
Wohin muß ich die Deklaration schreiben in meiner Datei und wohin kommt der andere Code (Diese Arbeitsmappe oder in normales Modul).
Hoffe, es kann jemand einen Tipp dazu geben.
Danke
Gruß :)
Michael
Anzeige

8
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: PDF Datei aus Excel drucken
25.08.2004 21:16:33
andre
Hallo Michael,
dann musst Du auch mal den Link zu dem Beitrag einstellen.
AW: PDF Datei aus Excel drucken
25.08.2004 21:37:55
andre
Hallo Michael,
mal zu dem zweiten Link:
1. in ein normales Modul
2. Aufpassen, hier wird der Code zerrissen. Private Declare ... ist i.O., Public Declare gehört auch in eine Zeile
3. Das mit dem Open wird angemosert, nimm mal DownPrint oder was anderes, was kein VBA-Befehl ist.
AW: PDF Datei aus Excel drucken
26.08.2004 13:09:49
Zwergel
Hallo Andre,
danke für den Hinweis.
Habe es jetzt mal so probiert und es klappt.
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 Drucken()
Product = "D:\Daten\Winword\Texte\DR allgGenehmigung AP-West.pdf"
ShellExecute 0, "Print", Product, "", "", SHOWMAXIMIZED
End Sub

Es bleibt jedoch das Adobe Programmfenster geöffnet. Hast Du noch einen Tipp, wie das Fenster am Ende geschlossen werden könnte?? Mit Parameter Close und Schließen ging es nicht.
Gruß
Michael
Anzeige
AW: PDF Datei aus Excel drucken
26.08.2004 18:35:54
andre
Hallo Michael,
mit geringen VBA-Kenntnissen wird das etwas kompliziert.
Schaue mal hier
http://www.activevb.de/tipps/vb6tipps/tipp0147.html
diesen Part
Private Sub Form_Load()
ersetzen mit
Private Sub Userform_initialize()
und hier
Task = Shell("notepad.ex e", vbNormalFocus)
muss ich erst mal testen, ob ich das
ShellExecute 0, "Print", Product, "", "", SHOWMAXIMIZED
reinbekomme...
Anzeige
AW: PDF Datei aus Excel drucken
26.08.2004 20:40:03
beat
Michael,
verwende in der ShellExecute - Zeile SW_HIDE und das Adobefenster geht nicht mal auf.
Gruss
Beat
Option Explicit
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 enShellExecuteShowCmd) As Long

Sub Drucken()
Dim Product As String
Product = "W:\rechnung_pdf\Kontrolle der Datensicherung.pdf"
ShellExecute 0, "Print", Product, "", "", SW_HIDE
Option Explicit
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 enShellExecuteShowCmd) As Long

Sub Drucken()
Dim Product As String
Product = "W:\rechnung_pdf\Kontrolle der Datensicherung.pdf"
ShellExecute 0, "Print", Product, "", "", SW_HIDE
End Sub

Anzeige
AW: PDF Datei aus Excel drucken
27.08.2004 19:42:12
Zwergel
Hallo Beat,
danke für den Tipp. Werde ich direkt am Montag mal testen.
Grüße und schönes Wochenende
Michael
;

Forumthreads zu verwandten Themen

Anzeige
Entdecke relevante Threads

Schau dir verwandte Threads basierend auf dem aktuellen Thema an

Alle relevanten Threads mit Inhaltsvorschau entdecken
Anzeige

Infobox / Tutorial

PDF-Datei aus Excel drucken


Schritt-für-Schritt-Anleitung

Um eine PDF-Datei aus Excel zu drucken, benötigst Du ein einfaches VBA-Skript. Hier ist eine Schritt-für-Schritt-Anleitung, wie Du dies umsetzen kannst:

  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:

    Option Explicit
    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 Drucken()
       Dim Product As String
       Product = "C:\Dein\Pfad\zu\deiner\datei.pdf" ' Pfad zur PDF-Datei anpassen
       ShellExecute 0, "Print", Product, "", "", 0
    End Sub
  4. Passe den Pfad zur PDF-Datei an, die Du drucken möchtest.

  5. Schließe den VBA-Editor und kehre zu Excel zurück.

  6. Um das Makro auszuführen, drücke ALT + F8, wähle „Drucken“ und klicke auf „Ausführen“.


Häufige Fehler und Lösungen

  • Problem: Das Adobe-Fenster bleibt geöffnet.

    • Lösung: Verwende SW_HIDE anstelle von 0 im ShellExecute Befehl, um das Fenster auszublenden:
    ShellExecute 0, "Print", Product, "", "", SW_HIDE
  • Problem: Fehlerhafte Pfade oder Dateinamen.

    • Lösung: Überprüfe, ob der Pfad zur PDF-Datei korrekt ist und die Datei existiert.

Alternative Methoden

Eine alternative Methode zum Drucken von PDF-Dateien aus Excel ist die Verwendung von Drittanbieter-Software oder Tools wie Adobe Acrobat. Hierbei kannst Du den Druckbefehl direkt über das Programm ansteuern und hast mehr Kontrolle über die Druckeinstellungen.


Praktische Beispiele

Hier sind einige praktische Beispiele, wie Du das VBA-Skript anpassen kannst:

  1. Drucken einer PDF-Datei ohne Öffnen:

    Sub DruckenOhneÖffnen()
       Dim Product As String
       Product = "C:\Dein\Pfad\zu\deiner\datei.pdf"
       ShellExecute 0, "Print", Product, "", "", SW_HIDE
    End Sub
  2. Drucken einer PDF-Datei aus einer Liste:

    Sub DruckenAusListe()
       Dim Produkt As String
       Dim i As Integer
       For i = 1 To 10 ' Beispiel für die ersten 10 Dateien
           Produkt = "C:\Dein\Pfad\zu\deiner\datei" & i & ".pdf"
           ShellExecute 0, "Print", Produkt, "", "", SW_HIDE
       Next i
    End Sub

Tipps für Profis

  • Wenn Du häufig PDF-Dateien druckst, erwäge, ein Excel-Makro zu erstellen, das automatisch die benötigten Dateien aus einem bestimmten Ordner druckt.
  • Nutze die Möglichkeit, die PDF-Dateien vor dem Druck zu überprüfen, um sicherzustellen, dass sie die richtigen Informationen enthalten.
  • Experimentiere mit den verschiedenen nShowCmd-Werten, um die Anzeige des Adobe-Fensters zu steuern.

FAQ: Häufige Fragen

1. Wie drucke ich eine PDF-Datei aus? Um eine PDF-Datei aus Excel zu drucken, kannst Du ein VBA-Makro verwenden, das den ShellExecute Befehl für die PDF-Datei ausführt.

2. Kann ich mehrere PDF-Dateien auf einmal drucken? Ja, Du kannst eine Schleife in Deinem VBA-Skript verwenden, um mehrere PDF-Dateien nacheinander zu drucken.

3. Gibt es eine Möglichkeit, das Adobe-Fenster zu schließen, nachdem die Datei gedruckt wurde? Das Schließen des Adobe-Fensters direkt nach dem Druck kann kompliziert sein. Es gibt jedoch Möglichkeiten, dies über zusätzliche VBA-Befehle zu steuern, die möglicherweise eine tiefere Programmierung erfordern.

4. Welche Excel-Version benötige ich? Die beschriebenen Schritte funktionieren in Excel 2010 und höher.

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