Tach zusammen!
Komische Sache, diese Word, Excel und PPT-Instanzierung... Ich habe hier drei Prozeduren, in jeder Prozedur wird der entsprechende Code ausgeführt, um ein .PS (Postscript)-File über den Acrobat Distiller zu drucken.
Irgendwie komisch, dass beim Excel-Aufruf kein Fenster von Excel erscheint, der Vorgang also im Hintergrund ausgeführt wird (SO sollte das sein) und bei Word und PPT jedesmal einfach die gesamte Dokumentansicht auf dem Bildschirm kommt. Mach ich da was falsch, oder sind die Office-Verweise einfach nicht sauber ausprogrammiert?
Code, um den übergebenen Filenamen (FNAME) in Word in .PS auszudrucken.
Dim Oapp As Word.Application
Dim Odoc As Word.document
On Error Resume Next
Err.Clear
Set Oapp = CreateObject("Word.Application")
Set Odoc = Oapp.Documents.Open(Chr$(34) + fname + Chr$(34), , , False)
Oapp.PrintOut True, False, , fname + ".ps"
Code, um den übergebenen Filenamen (FNAME) in Word in .PS auszudrucken.
' Ein paar Variablen
Dim Oapp As New EXCEL.Application
Dim Odoc As New EXCEL.Workbook
On Error Resume Next
Err.Clear
Set Oapp = CreateObject("Excel.Application")
Set Odoc = Oapp.Workbooks.Open(fname)
Oapp.ActiveWorkbook.PrintOut , , , , , True, , fname + ".ps"
Code, um den übergebenen Filenamen (FNAME) in PPT in .PS auszudrucken.
' Ein paar Variablen
Dim Oapp As New POWERPOINT.Application
Dim Odoc As New POWERPOINT.Presentation
On Error Resume Next
Err.Clear
Set Oapp = CreateObject("Powerpoint.Application")
Oapp.Activate
Set Odoc = Oapp.Presentations.Open(fname, msofalse)
Oapp.ActivePresentation.PrintOut , , fname + ".ps"
Wie schon gesagt, nur das XLS-Sample läuft richtig, bei beiden anderen hab ich immer die störenden Programmfenster im Vordergrund...
KAS
Programming is like magic!
You can create, move, modificate, clone and destroy!