Midlertidig Ændring af printeren i en makro

Shaune har skrevet en makro, der udskriver, til en PDF-forfatter, produktdatablade. Da han udskriver til PDF-forfatter, makroen nulstiller standardprinteren for det system, hvor den kører, så når nogen forsøger derefter at udskrive regelmæssigt (efter makroen er færdig), Word stadig antager brugeren ønsker at udskrive til PDF forfatter. Shaune søger en måde for hans makro til at bruge PDF-forfatter midlertidigt, uden at nulstille standardprinteren.

Den dårlige nyhed, Shaune, er, at du ikke kan komme rundt nulstille printeren. Når du nulstiller ActivePrinter ejendom, så Word forudsætter, at den printer, du angiver forbliver den aktive (standard) printer, indtil du specifikt nulstille den.

Den gode nyhed er, at du også kan læse ActivePrinter ejendom, hvilket betyder din makro kan spare uanset printer personen havde valgt før makroen blev kørt, og derefter nulstille ActivePrinter ejendommen forud for spændende. Resultatet er, at brugeren aldrig opdager, at standardprinteren blev ændret, fordi din makro fornemmede indstillingerne og derefter ændret det tilbage. Denne teknik anvendes på denne måde:

Sub PrinterTechnique ()
Dim sCurrentPrinter som String
Dim sPDFwriter som String

'Udføre, hvad opgaverne skal gøres før udskrivning
"Sørg for du også initialisere sPDFwriter streng med
»Navnet på din PDF forfatter

"Gem aktuel printer navn, og derefter skifte til PDF writer
sCurrentPrinter = Application.ActivePrinter
Application.ActivePrinter = sPDFwriter

'Print dokument, så gå tilbage til den oprindelige printer
ActiveDocument.PrintOut
Application.ActivePrinter = sCurrentPrinter

"Fortsætte med resten af ​​din makro

End Sub

WordTips er din kilde til omkostningseffektiv Microsoft Word træning. (Microsoft Word er det mest populære tekstbehandlingsprogram i verden.) Dette tip (318) gælder for Microsoft Word 97, 2000, 2002, og 2003. Du kan finde en version af dette tip til menufaner Word (Word 2007 og nyere) her: Midlertidigt Ændring af printeren i en makro.


© 2021 Zajacperrone.com | Contact us: webmaster# zajacperrone.com