Definiera förvalda skrivare på en dokumentnivå

May 18

Vissa program kommer ihåg, på ett dokument-för-dokument basis, vilken skrivare du senast använde när du arbetar med det dokumentet. Till exempel, InDesign och Quarkxpress ihåg vad skrivaren har använts för att skriva ut en viss handling, Om du byter från ett dokument till ett annat, skrivaren utsetts för att skriva ut dokumentet kommer också att förändras.

Word tyvärr inte har en sådan förmåga. Istället håller Word koll på skrivare på en session-för-session basis. Med andra ord, när du startar Word, startar det genom att anta att du vill skriva ut till din standardskrivare i Windows. Om du senare byta till en annan skrivare, förblir den skrivaren valts tills du specifikt göra ändringar. När du avslutar ditt Word-session och starta senare, återgår den valda skrivaren igen till standardskrivare.

Det finns flera sätt som du kan komma runt denna brist. En är att definiera olika anpassade skrivarens knappar (en för varje av dina skrivare) och sedan helt enkelt använda dem för att skriva ut olika dokument, som önskat. Om du vill att Word för att göra minnas vilken skrivare användes, då det enda alternativet är att skapa ett makro som skulle göra det åt dig. Detta tillvägagångssätt är dock inte en trivial en. Av denna anledning kommer balansen i detta tips diskuterar endast generaliseringar att skriva en sådan makro istället för att presentera den verkliga makrokoden.

Ett enkelt sätt att genomföra ett sådant makro system skulle vara att definiera en särskild anpassad dokumentegenskap, och sedan använda innehållet i den egenskapen att lagra namnet på skrivaren sist används för dokumentet. Dokumentet Fastigheten kunde ställas in med Autoclose makro, som kallas när du stänger ett dokument.

När den anpassade dokument egenskapen är inställd, kan ett makro läsa värdet och återställa skrivaren när du är redo att skriva ut. Om dokumentet egenskapen inte är inställd eller om den är inställd på en skrivare som inte är tillgänglig, så kan det helt enkelt använda standardskrivare i Windows.

Tricket i allt detta, naturligtvis, är att avgöra när det makro som gör att skrivaren växling bör verkställas. Det kan placeras i en av de automatiska makron (såsom Open), men det skulle inte helt lösa problemet. Till exempel, om du öppnar två dokument samtidigt, skrivaren skulle förbli inställd till skrivaren anges i det senaste dokumentet som du öppnade.

En mer användbar lösning kan vara att helt enkelt använda makron för att omdefiniera utskriftskommandot användas inom Word. När du väljer att skriva ut dokumentet, skulle makrot presentera standard dialogrutan Skriv, men den valda skrivaren skulle ändras till vad skrivaren lagras i anpassade dokument egendom. Nackdelen med detta tillvägagångssätt är densamma som den ursprungliga styrka att skrivaren inte ändras förrän faktiskt utskrift. Word bygger på vald skrivardrivrutin för att styra sin WYSIWYG display. Med andra ord, skrivardrivrutinen valt styr hur information visas på skärmen. Om förändringar skrivardrivrutinens strax före utskrift, vad skrivs kanske inte matchar det som visas på skärmen.

Den bästa lösningen vore att knyta skrivaren sättande makro till en händelse som avfyras när ett dokument uppnått fokus (när dokumentet valdes). Tyvärr finns det ingen sådan händelse för dokumentobjekt i VBA. (Vilket är mycket nyfiken eftersom det finns ett sådant objekt i Excel genomförande av VBA.)

Resultatet av allt detta är att en komplett lösning kommer att kräva byte av flera olika inbyggda Word-kommandon. Vilka kommandon? Det beror egentligen på hur du använder Word. Till exempel, om du normalt ser på Förhandsgranska före utskrift, då du kommer att vilja ändra kommandot Förhandsgranskning så att den ändras skrivardrivrutinen. Tycker du väljer kommandot Skriv ut direkt från skärmen Förhandsgranska utskrift? Om så är fallet, då du kommer att behöva göra ändringar i det kommandot.

WordTips är din källa för kostnadseffektiv Microsoft Word utbildning. (Microsoft Word är det mest populära ordbehandlingsprogram i världen.) Detta tips (1551) gäller för Microsoft Word 97, 2000, 2002, och 2003. Du kan hitta en version av detta tips för menyfliksområdet i Word (Word 2007 och senare) här: Definiera förvalda skrivare på en dokumentnivå.