Rubrik: Word | VB-Versionen: VBA | 08.10.01 |
Word - Drucken aus verschiedenen Papierschächte Word-Makro zum Ausdrucken von Dokumenten auf Druckern mit mehr als einen Papierschacht. | ||
Autor: Christian Rickel | Bewertung: | Views: 26.315 |
ohne Homepage | System: Win9x, WinNT, Win2k, WinXP, Win7, Win8, Win10, Win11 | kein Beispielprojekt |
Makro zum Ansteuern verschiedener Druckerschächte in Word, um z.B. nur die erste Seite eines Briefes auf das Firmen-Briefpapier mit dem enthaltenen Firmenlogo zu drucken. Für alle weiteren Seiten wird dann das Papier aus einem anderen Papierschacht verwendet. Hierbei wird automatisch der Dokumentschutz deaktiviert.
Das Makro kann auch abgewandelt werden, um noch zusätzliche Druckerschächte oder den manuellen Einzug an Druckern anzusteuern. Zum Schluss werden alle Seiten wieder auf normales Papier zurückgestellt und der Dokumentschutz wird aktiviert, ohne die Formularfelder zu löschen. In dem Makro müssen die beiden Zeilen "unten" und "oben" abgeändert werden. Zur weiteren Vereinfachung sollte man sich das Makro entweder in die Symbolleiste oder in die Menüleiste kopieren.
Sub Kopfbogen() ' ' Kopfbogen Makro ' Makro zum Drucken von Briefen und Formularen, ' wobei die erste Seite auf das "Briefpapier" und die ' übrigen Seiten auf normalen Papier gedruckt werden. ' Die unten angegeben Stellen müssen an die jeweiligen ' Druckereinstellungen angeglichen werden. ' Zum Schluß wird der Dokumentschutz wieder eingestellt, ' ohne dabei die Formularfelder zu löschen und alle Seiten ' werden wieder auf den "normalen" Druckerschacht ' umgestellt. On Error GoTo err_Kopfbogen Select Case ActiveDocument.ProtectionType Case wdNoProtection ActiveDocument.Protect Type:=wdAllowOnlyFormFields, NoReset:=True Case wdAllowOnlyRevisions, wdAllowOnlyComments MsgBox "Das Dokument stellt kein gültiges Formular dar." Exit Sub Case wdAllowOnlyFormFields ActiveDocument.Unprotect End Select GoTo ende_Kopfbogen err_Kopfbogen: Select Case ActiveDocument.ProtectionType Case wdNoProtection ActiveDocument.Protect Type:=wdAllowOnlyFormFields, NoReset:=True Case wdAllowOnlyRevisions, wdAllowOnlyComments MsgBox "Das Dokument stellt kein gültiges Formular dar." Exit Sub Case wdAllowOnlyFormFields ActiveDocument.Unprotect End Select ende_Kopfbogen: Dim oben As String Dim unten As String ' Die Kennung für den Druckerschacht mit normalem Papier oben = 288 ' Die Kennung für den Drucherschacht mit Briefpapier ' oder der manuelle Einzug unten = 290 With ActiveDocument.PageSetup .FirstPageTray = unten .OtherPagesTray = oben End With ActiveDocument.PrintOut With ActiveDocument.PageSetup .FirstPageTray = oben .OtherPagesTray = oben End With ActiveDocument.Protect Type:=wdAllowOnlyFormFields, NoReset:=True End Sub