Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

VBA - Drucken von Dateien im Verzeichnis

1,099 views
Skip to first unread message

Dennis Miller

unread,
Jul 15, 2009, 12:05:36 PM7/15/09
to
Hallo,

ich habe in meiner Exceldatei den Pfad und den Dateinamen von mehreren
Dateien, die auf meinem Verzeichnis sind, hinterlegt.

Nun benötige ich eine Möglichkeit, dass diese Dateien durch eine VBA
Programmierung automatisch ausgedruckt werden, wenn eine bestimmtes
Ereignis erfüllt ist (z.B. zahl=1).

Sobald zahl=1 sollten diese Dateien gedruckt werden.

Kann mir bitte jemand helfen.

Vielen Dank

Gruß Dennis

Andreas Killer

unread,
Jul 15, 2009, 12:23:16 PM7/15/09
to
Dennis Miller schrieb:

> ich habe in meiner Exceldatei den Pfad und den Dateinamen von mehreren
> Dateien, die auf meinem Verzeichnis sind, hinterlegt.
>

> Nun ben�tige ich eine M�glichkeit, dass diese Dateien durch eine VBA


> Programmierung automatisch ausgedruckt werden, wenn eine bestimmtes

> Ereignis erf�llt ist (z.B. zahl=1).


>
> Sobald zahl=1 sollten diese Dateien gedruckt werden.

Als erstes zeichnest Du Dir ein Makro auf und druckst die gew�nschten
Dateien, sagen wir mal das Makro hei�t DruckMakro.

Dann k�nnten wir eine Zelle z.B. A1 �berwachen ob sie 1 geworden ist:

--- schnipp ---
Dim LastValue As Variant

Private Sub Worksheet_Change(ByVal Target As Range)
If Range("A1") = 1 And LastValue <> 1 Then DruckMakro
'Letzten Wert merken, sonst wird immer gedruckt!
LastValue = Range("A1").Value
End Sub
--- schnapp ---

Der Code muss in das Codemodul der Tabelle, wie's geht steht hier:
http://www.online-excel.de/excel/singsel_vba.php?f=44#s4

Andreas.

Dennis Miller

unread,
Jul 15, 2009, 2:46:16 PM7/15/09
to
Danke, nur es bleibt weiterhin dasProblem, dass die Daten keine
Exceldateien, sondern Word und PDF-Files sind.
Diese kann ich ohne Makro garnicht innerhalb von Excel drucken. Die
Dateien sollen nicht durch einen Hyperlink verlinkt werden, daher
brauche ich ein Makro. Durch Makro aufzeichnen komme ich leider nicht
weiter

Gruß D.

Martin Hentrich

unread,
Jul 15, 2009, 3:05:33 PM7/15/09
to
On Wed, 15 Jul 2009 11:46:16 -0700 (PDT), Dennis Miller
<snoo...@gmx.net> wrote:

>Danke, nur es bleibt weiterhin dasProblem, dass die Daten keine
>Exceldateien, sondern Word und PDF-Files sind.

Und du meinst, das sei nicht wichtig und verschweigst das in deiner
ersten Frage?

>Diese kann ich ohne Makro garnicht innerhalb von Excel drucken

Eben. Gar nicht! Word mag �ber eine Fernsteuerung noch gehen, bei PDF
sehe ich schwarz. Eventuell geht das mit dem Windows Script Host.

Allerdings hast du auch gar nichts �ber deine Excel-Version und gar
nichts �ber dein Betriebssystem mitgeteilt!

Martin
--
So auch ihr: wenn ihr in Zungen redet und nicht mit deutlichen Worten, wie kann
man wissen, was gemeint ist? Ihr werdet in den Wind reden. ...Wenn ich nun die
Bedeutung der Sprache nicht kenne, werde ich den nicht verstehen, der redet,
und der redet, wird mich nicht verstehen. [1. Kor 14, 9 - 11]

Michael Schwimmer

unread,
Jul 15, 2009, 10:35:00 PM7/15/09
to
Hallo Dennis,

Am Wed, 15 Jul 2009 09:05:36 -0700 (PDT) schrieb Dennis Miller:
> ich habe in meiner Exceldatei den Pfad und den Dateinamen von mehreren
> Dateien, die auf meinem Verzeichnis sind, hinterlegt.
>

> Nun ben�tige ich eine M�glichkeit, dass diese Dateien durch eine VBA


> Programmierung automatisch ausgedruckt werden, wenn eine bestimmtes

das Drucken einer Datei kannst du so erledigen:

Private Declare Function ShellExecute Lib "shell32.dll" _
Alias "ShellExecuteA" (ByVal Fensterzugriffsnummer As Long, _
ByVal lpOperation_wie_Open_oder_Print As String, _
ByVal lpDateiname_incl_Pfad As String, _
ByVal lpZus�tzliche_Startparameter As String, _
ByVal lpArbeitsverzeichnis As String, _
ByVal nGew�nschte_Fenstergr��e_der_Anwendung As Long) _
As Long

Private Const SW_HIDE = 0
Private Const SW_MAX = 10
Private Const SW_MAXIMIZE = 3
Private Const SW_MINIMIZE = 6
Private Const SW_NORMAL = 1
Private Const SW_SHOW = 5
Private Const SW_SHOWDEFAULT = 10
Private Const SW_SHOWMAXIMIZED = 3
Private Const SW_SHOWMINIMIZED = 2
Private Const SW_SHOWMINNOACTIVE = 7
Private Const SW_SHOWNORMAL = 1
Private Const SW_SHOWNOACTIVATE = 4

Sub Drucken()
ShellExecute 0&, "Print", "c:\Eigene Dateien\Asdf.pdf", _
vbNullString, vbNullString, SW_SHOWMINNOACTIVE
End Sub

'Sub �ffnen()
'ShellExecute 0&, "Open", "c:\Eigene Dateien\Asdf.pdf", _
' vbNullString, vbNullString, SW_SHOWNORMAL
'End Sub

ShellExecute �ffnet oder druckt mit dem Programm, das in der Registy zu
dieser Dateinamenserweiterung eingetragenen wurde.


> Ereignis erf�llt ist (z.B. zahl=1).


> Sobald zahl=1 sollten diese Dateien gedruckt werden.

Zu wenig Infos!
Wo sind Pfade hinterlegt, wo steht diese ausl�sende Zahl? Wird diese Zahl
per Eingabe oder Formel ge�ndert?


Viele Gr��e
Michael


--
http://michael-schwimmer.de
Masterclass Excel VBA ISBN-10: 3827325250
Das Excel-VBA Codebook ISBN-10: 3827324718
Microsoft Office Excel 2007-Programmierung ISBN-10: 3866454139

Dennis Miller

unread,
Jul 19, 2009, 10:35:03 AM7/19/09
to
Super.
Danke.

werds gleich mal ausprobieren.

0 new messages