15. september 2005 - 16:05Der er
1 kommentar og 2 løsninger
Brug af PrintOut og ActivePrinter
Jeg er blevet rodet ud i en opgave med noget Excel VBA programmering, og det er ikke normalt det jeg arbejder med, så here goes...
Er det muligt at bruge PrintOut funktionens parameter "ActivePrinter" til at definere en anden printerdriver end den der f.eks. sidst er brugt til at udskrive manuelt med?
Jeg er nemlig ved at lave en løsning med noget PDF-generering der gerne måtte vises i farve, men hvis brugeren har brugt en sort/hvid printer sidst de printede manuelt, så bruges den igen i min makro. Jeg vil derfor gerne have mulighed for at override deres sidste printervalg, og benytte en bestemt printerdriver (printeren er installeret på klienterne og har samme navn overalt).
Nå, fandt selv ud af det. Egentligt ret simpelt, så jeg fik det lavet sådan at den satte den gamle aktive printer til at være aktiv igen, efter udskriften som postscript fil.
Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean) Dim oldPrin oldPrin = Application.ActivePrinter Me.Sheets.PrintOut , , 1, False, "\\Min_Server\Min_Farveprinter", True, , "L:\Administration\PDFGen\In\TestCol.ps" Application.ActivePrinter = oldPrin End Sub
Tak for hjælpen ellers - men brugerne skal ikke kunne vælge noget.
Hver gang de gemmer excel-dokumentet skal den dumpe en postscript fil ned i en mappe, hvor filen automatisk konverteres til PDF og smides et bestemt sted hen bagefter.
Men lad os da dele pointene - det havde sikkert været en inspiration til min løsning alligevel!
Synes godt om
Ny brugerNybegynder
Din løsning...
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.