Live-Forum - Die aktuellen Beiträge
Datum
Titel
23.04.2024 14:59:21
23.04.2024 14:47:39
23.04.2024 14:23:45
Anzeige
Archiv - Navigation
624to628
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
624to628
624to628
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

ausgabe auf pdf

ausgabe auf pdf
16.06.2005 11:43:41
jan
hi !
ich will alle arbeitsblätter auf einen pdf-drucker ausgeben und habe folgenden code hierfür geschrieben:

Sub InArbeitsmappe_AllesDrucken()
On Error GoTo Err_InArbeitsmappe_AllesDrucken
Dim i As Integer
Dim Blatt As Worksheet
Dim s As String
Dim zelle As Range
Dim iMsg As Integer
Dim sPrintToFileName As String
iMsg = MsgBox("Willst Du wirklich alles Ausdrucken !!!" & Chr(13) & "Ist ein virtueller Drucker angeschossen ?", 308, "Nachgefragt")
Select Case iMsg
Case vbYes
Case vbNo
'Place conditional Code here
MsgBox "Funktion abgebrochen"
GoTo Exit_InArbeitsmappe_AllesDrucken
End Select
For i = 1 To Application.Workbooks.Count
For Each Blatt In Workbooks(i).Worksheets
Blatt.Activate
ActiveWindow.SelectedSheets.PrintOut Copies:=1
sPrintToFileName = " - " & ActiveWorkbook.ActiveSheet.Name & " - " & Format(Now(), "yyyymmdd")
MsgBox sPrintToFileName
ActiveWindow.SelectedSheets.PrintOut Copies:=1, prtofilename:=sPrintToFileName
Next Blatt
Workbooks(i).Activate
Next i
ActiveWindow.ScrollWorkbookTabs Position:=xlFirst
Range("A1").Select
MsgBox "Vorgang abgeschlossen !"
Exit_InArbeitsmappe_AllesDrucken:
On Error GoTo 0
Exit Sub
Err_InArbeitsmappe_AllesDrucken:
MsgBox "Fehler beim Massenausdruck"
GoTo Exit_InArbeitsmappe_AllesDrucken
End Sub

der pdf-drucker wird als standard gesetzt und dann sollte es funktionieren. leider kommt es dann zum absturz - keine rückmeldung.
wenn ich einen anderen virtuellen drucker (fineprint)nehme, dann klappt es besser ! allerdings kommt dann irgendwann auch eine meldung, dass ein fehler bei einer Massenausgabe vorliegt.
was kann die ursache hierfür sein bzw. hat einer von euch hierfür eine lösung ?
gruß Jan :-)

7
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: ausgabe auf pdf
16.06.2005 11:46:40
jan
nachtrag !
das mit dem Massenausgabefehler hat sich erledigt ! Bedienfehler !
gruß Jan :-)
AW: ausgabe auf pdf
16.06.2005 13:38:18
geri
Hallo Jan
als Ansatz

Sub PDF_erstellen()
Application.ActivePrinter = "Acrobat PDFWriter auf LPT1:"
'dein Code
ActiveWindow.SelectedSheets.PrintOut Copies:=1, ActivePrinter:= _
"Acrobat PDFWriter auf LPT1:"
Application.ActivePrinter = "\\chbnrzs003\b075 auf Ne02:" 'wieder zurück auf Standard Drucker
End Sub

den Standarddrucker musst du anpassen am besten zeichne mit Recorder
etwas auf zB Drcukerwechsel und öndere diese zeilen
gruss geri
Anzeige
AW: ausgabe auf pdf
16.06.2005 13:53:50
jan
hi geri !
wenn ich dich richtig verstanden habe, dann scheitert mein pdf daran, dass ich diesen nicht über excel gestetzt habe und auch von dort im code dem druckbefehl mitgegeben habe ! richtig ?
auch wenn ich den pdf-drucker als standard setze ?
das ist aber doof, wenn ich die excel-datei an einen anderen rechner weitergebe und der meinen druckernamen nicht kennt !
gruß Jan :-)
AW: ausgabe auf pdf
16.06.2005 14:05:25
geri
Hallo Jan
ich habe Lösung im Geschäft, wo ich aktiven Standarddrucker in Variable schreibe
dann PDF erstelle und wieder zurück, kann dir morgen früh dies in diesen Beitrag schreiben, wenn du möchtest.
gruss geri
Anzeige
AW: ausgabe auf pdf
16.06.2005 14:15:01
jan
gerne !
gruß Jan :-)
AW: ausgabe auf pdf
17.06.2005 07:13:30
geri
Hallo Jan
hoffe es ist was du suchst

Sub PDF_erstellen_Page()
Dim strCurrentPrinter As String
strCurrentPrinter = Application.ActivePrinter ' store the current active printer
On Error Resume Next ' ignore printing errors
Application.ActivePrinter = "PDF995 auf Ne00:"
ActiveWindow.SelectedSheets.PrintOut Copies:=1, ActivePrinter:= _
"PDF995 auf Ne00:", Collate:=True
Application.ActivePrinter = strCurrentPrinter ' change back to the original printer
On Error GoTo 0 ' resume normal error handling
End Sub


Sub PDF_erstellen_Mappe()
Dim strCurrentPrinter As String
strCurrentPrinter = Application.ActivePrinter ' store the current active printer
On Error Resume Next ' ignore printing errors
Application.ActivePrinter = "PDF995 auf Ne00:"
ActiveWorkbook.PrintOut.PrintOut Copies:=1, ActivePrinter:= _
"PDF995 auf Ne00:", Collate:=True
Application.ActivePrinter = strCurrentPrinter ' change back to the original printer
On Error GoTo 0 ' resume normal error handling
End Sub

den PDF Writer musst du umschreiben auf den du hast
gruss geri
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige