Anfängerfrage / PDF-Druck und Mail-Versand eines Arbeitblattes

23/04/2009 - 10:40 von Franz | Report spam
Hallo zusammen

Ich bin absolut kein Excel oder VBA-Experte, sollte aber ein kleines
Problem lösen:

Ich muss jeden Tag eine Seite aus einem Workbook als PDF-Datei drucken
und per Outlook an verschiedene Adressaten schicken. Gerne möchte ich
das automtisieren und wollte auch ein Makro aufnehmen, Aber schon bei
der Druckerauswahl happert es, das Makro registriert diese gar nicht,
auch der Dokumentenname nicht und der erst der Versand an die
Mailadressen aaa@adresse.cz; bbb@adresse.cz; wird schon gar nicht
registriert.

Hat vieleicht jemand eine pfannenfertige Lösung, so mit einem
"Druckknopf" auf dem Worksheet, der dann alles steuert. Noch idealer
wàre das vollstàndig im Hintergrund zu automatisieren, an jedem
Werktag um 11.30 h muss das Blatt nàmlich raus!

Ist leider kein kommerzielles Projekt, sonst würde ich jemanden
beauftragen.

Schon jetzt vielen herzlichen Dank für alle Hilfe!

Gruss aus Prag

Franz

 

Lesen sie die antworten

#1 Andreas Killer
23/04/2009 - 12:26 | Warnen spam
On 23 Apr., 10:40, Franz wrote:

Ich bin absolut kein Excel oder VBA-Experte, sollte aber ein kleines
Problem lösen:


Klein? Scherzkeks.

Ich muss jeden Tag eine Seite aus einem Workbook als PDF-Datei drucken
und per Outlook an verschiedene Adressaten schicken. Gerne möchte ich
das automtisieren und wollte auch ein Makro aufnehmen, Aber schon bei
der Druckerauswahl happert es, das Makro registriert diese gar nicht,
auch der Dokumentenname nicht und der erst der Versand an die
Mailadressen ; ; wird schon gar nicht
registriert.


Ja, ist auch logisch das das nicht geht, denn Du agierst mit 2 anderen
Programmen und was die machen weiß Excel nicht.

Hat vieleicht jemand eine pfannenfertige Lösung, so mit einem
"Druckknopf" auf dem Worksheet, der dann alles steuert. Noch idealer
wàre das vollstàndig im Hintergrund zu automatisieren, an jedem
Werktag um 11.30 h muss das Blatt nàmlich raus!


Eine fertige Lösuing wird es nicht geben, denn die Ansteuerung der
externen Programme wird unter Excel ggf. nicht möglich sein.

Step by Step:

Um ein Makro zu einer bestimmten Zeit auszuführen nimmt man OnTime und
ruft das im Open-Ereignis auf:

Private Sub Workbook_Open()
Application.OnTime EarliestTime:=TimeValue("11:30:00"), _
Procedure:="PrintAsPDF", Schedule:=False
End Sub

Wenn ich ein Sheet auf einen anderen als den Standarddrucker drucken
möchte, dann geht das bei mir so:

Sub PrintAsPDF()
ActiveWindow.SelectedSheets.PrintOut Copies:=1, Preview:=False, _
ActivePrinter:="FreePDF XP auf Ne00:", Collate:=True
End Sub

Hier ist nun erstmal Ende der Fahnenstange, denn wer weiß wie Dein PDF-
Drucker aggiert und wo er das File ablegt..., evt. könnte man nun eine
Schleife programmieren und ein Verzeichnis überwachen und dort
nachschauen ob ein PDF vorliegt. Wenn es denn da ist, dann könnte das
Makro weiterlaufen und für den Fall das Du Outlook hast dieses dann
verschicken.

Andreas.

Ähnliche fragen