Zum Inhalt springen
View in the app

A better way to browse. Learn more.

Fachinformatiker.de

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

Empfohlene Antworten

Veröffentlicht

folgendes problem:

wir haben einen drucker mit zwei papierschaechten, in schacht 1 liegt papier mit unserem briefkopf und in schacht 2 liegt blankopapier. jetzt wollen wir zb ein script ausdrucken wo die erste seite mit briefkopf und die folgenden seiten ohne kopf auf dem blanko papier ausgedruckt werden. wir haben schon ein makro geschrieben allerdings funktioniert das mal und mal nicht. jetzt wuerde ich gerne wissen ob man das irgendwie wordseitig einstellen kann das bei verschiedenen seiten verschiedene papierschaechte genommen werden sollen. natuerlich wollen wir auch "normal" mit dem drucker weiterarbeiten koennen das nicht immer diese funktion aktiv ist sondern nur bei bedarf aktiviert werden kann. danke schonmal im voraus!!

Warum erstellt ihr nicht eine Vorlage in Word in der die Papierzufuhr geregelt ist?

Bei uns ist der Schacht mit dem weißen Papier der Standardschacht (über die Eigenschaften des Druckers festlegen) und in der Word-Vorlage ist dann definiert (über Datei - Seite einrichten - Papierzufuhr), dass die erste Seite aus Schacht 1 (Briefkopf) genommen werden soll und die restlichen Seiten aus dem Standardschacht.

aber funktioniert leider nicht mit serienbriefen, da nimmt der nur wirklich die erste seite und wenn dann wieder eine adresse kommt dann faengt er nicht wieder bei eins an!! es soll halt moeglichst interaktiv sein, serienbrief ja/nein, serienbrief mit durchschlag (durchschlag ohne kopf), quasi ein menue wo man fuer jeden druckauftrag dieses geschichten waehlen kann! :)

also etwas in dieser art:

Sub HP4300()

'

' HPLJ4300 Makro


Dim exemplare$

Dim abbruch

Dim schachtauswahl1$

Dim schachtauswahl2$

Dim schachtauswahl3$

Dim exemplar1

Dim exemplar2

Dim exemplar3

Dim anzseite

Dim Fach1

Dim Fach2

Dim Fach3


Rem ####################### Zuweisen der Variablen den Druckerinternen Fach-Ids #########

Fach1 = 264

Fach2 = 263

Fach3 = 262



Rem ###################### Tasteneingabe für Dialogfenster generieren ###################

exemplare$ = "1" + "{Tab}" + "1" + "{Tab}" + "1"

WordBasic.SendKeys exemplare$, -1

    WordBasic.BeginDialog 583, 203, "Papierschachtauswahl HP LJ 4300"

    WordBasic.Text 204, 32, 84, 13, "Exemplare:"

    WordBasic.TextBox 215, 52, 50, 18, "Original"

    WordBasic.Text 204, 132, 84, 13, "Exemplare:"

    WordBasic.TextBox 215, 152, 50, 18, "VTDurchschlag"

    WordBasic.Text 488, 32, 84, 13, "Exemplare:"

    WordBasic.TextBox 488, 52, 50, 18, "Ablage"

    WordBasic.GroupBox 10, 6, 180, 85, "Original"

    WordBasic.OptionGroup "OptionGroup1"

        WordBasic.OptionButton 20, 40, 150, 16, "Fach 2"

        WordBasic.OptionButton 20, 20, 150, 16, "Fach 1"

        WordBasic.OptionButton 20, 63, 150, 16, "Fach 3"

    WordBasic.GroupBox 10, 112, 180, 85, "Ablage"

    WordBasic.OptionGroup "OptionGroup2"

        WordBasic.OptionButton 20, 168, 150, 16, "Fach 3"

        WordBasic.OptionButton 20, 145, 150, 16, "Fach 2"

        WordBasic.OptionButton 20, 125, 150, 16, "Fach 1"


    WordBasic.GroupBox 290, 6, 180, 85, "VTDurchschlag"

    WordBasic.OptionGroup "OptionGroup3"

        WordBasic.OptionButton 300, 20, 150, 16, "Fach 1"

        WordBasic.OptionButton 300, 40, 150, 16, "Fach 2"

        WordBasic.OptionButton 300, 63, 150, 16, "Fach 3"

    WordBasic.OKButton 335, 174, 180, 21

    WordBasic.CancelButton 371, 133, 99, 21

WordBasic.EndDialog

Dim dlg As Object: Set dlg = WordBasic.CurValues.UserDialog


Rem ############################# Wenn Abbruch dann Ende Makro ######################

abbruch = WordBasic.Dialog.UserDialog(dlg)

If abbruch = 0 Then

    GoTo bye

End If


Rem ############################ Auslesen der Schachtauswahl Original 1.Seite ##############

Select Case dlg.OptionGroup1

    Case 0

        schachtauswahl1$ = Fach2

    Case 1

        schachtauswahl1$ = Fach1

    Case 2

        schachtauswahl1$ = Fach3


End Select


Rem ############################ Auslesen der Schachtauswahl Durchschlag ##############

Select Case dlg.OptionGroup2

    Case 0

        schachtauswahl2$ = Fach3

    Case 1

        schachtauswahl2$ = Fach2

    Case 2

        schachtauswahl2$ = Fach1

End Select


Rem ############################ Auslesen der Schachtauswahl Original 2.Seite ##############

Select Case dlg.OptionGroup3

    Case 0

        schachtauswahl3$ = Fach1

    Case 1

        schachtauswahl3$ = Fach2

    Case 2

        schachtauswahl3$ = Fach3

End Select


Rem ############################ Umwandlung der Exemplaranzahl in Zahlen ##############

exemplar1 = WordBasic.Val(dlg.Original)

exemplar2 = WordBasic.Val(dlg.VTDurchschlag)

exemplar3 = WordBasic.Val(dlg.Ablage)


Rem ############################ Auslesen Seitenanzahl des Dokuments ##############

Dim stat As Object: Set stat = WordBasic.DialogRecord.DocumentStatistics(False)

    WordBasic.CurValues.DocumentStatistics stat

    anzseite = WordBasic.Val(stat.Pages)




Rem ############################ Wenn die Exemplaranzahl der Originale größer 0 ##############

If exemplar1 > 0 Then


    ActivePrinter = "\\STU01\HP LaserJet 4300 PCL 5e"


    ActiveDocument.PageSetup.FirstPageTray = schachtauswahl1$

    ActiveDocument.PageSetup.OtherPagesTray = schachtauswahl1$


    ActiveDocument.PrintOut Copies:=exemplar1

End If


Rem ############################ Wenn die Exemplaranzahl der Durchschläge > 0 ##############

If exemplar2 > 0 Then

    ActivePrinter = "\\STU01\HP LaserJet 4300 PCL 5e"


    ActiveDocument.PageSetup.FirstPageTray = schachtauswahl2$

    ActiveDocument.PageSetup.OtherPagesTray = schachtauswahl2$


    ActiveDocument.PrintOut Copies:=exemplar2

End If


Rem ############################ Wenn die Exemplaranzahl der Durchschläge > 0 ##############

If exemplar3 > 0 Then

    ActivePrinter = "\\STU01\HP LaserJet 4300 PCL 5e"


    ActiveDocument.PageSetup.FirstPageTray = schachtauswahl3$

    ActiveDocument.PageSetup.OtherPagesTray = schachtauswahl3$


    ActiveDocument.PrintOut Copies:=exemplar3

End If


Rem ############################ Sprungmarke für Abbruch ###############################

bye:

End Sub

dieses Macro mit einem Button verknüpft macht ein Menü, in dem man auswählen kann wie die 3 Kopienen gedruckt werden.

Also 1. Kopie 1. Schacht

2. Kopie 2ter Schacht

3. Kopie 3ter Schacht.

Bastel damit mal etwas und veränder es.

Eine Auswahl zwischen Serienbrief j/n ist afaik moeglich, das muss getrennt behandelt werden.

AFAIK kannst Du Serienbriefe und dessen Druckoptionen nur mit dem Serienbrief-Assistenten erstellen/bearbeiten.

vielen dank! werd mit dem ding mal ein wenig rum experimentieren!

wenn ihr noch weiter vorschlaege haben solltet haltet euch nicht zurueck diese auch zu posten ;) !!!

nochmal ne frage dazu...

wie bist du an die id's von den papieschaechten gekommen, die internetseiten geben nicht viel aufschluss oder sind das erdachte werte??

so... das grundproblem an sich ist geloest! vielen dank fuer die hilfe!! :)

hier mal das fertige makro:


Sub BauamtKyocera()

'

' Bauamt Kyocera Drucker


Dim exemplare$

Dim abbruch

Dim schachtauswahl1$

Dim schachtauswahl2$

Dim exemplar1

Dim exemplar2

Dim anzseite

Dim Fach1

Dim Fach2


Rem ####################### Zuweisen der Variablen den Druckerinternen Fach-Ids #########

Fach1 = 14

Fach2 = 3



Rem ###################### Tasteneingabe für Dialogfenster generieren ###################

exemplare$ = "1" + "{Tab}" + "0"

WordBasic.SendKeys exemplare$, -1

    WordBasic.BeginDialog 400, 120, "Papierschachtauswahl Kyocera"


    WordBasic.Text 295, 15, 84, 13, "Anzahl:"

    WordBasic.TextBox 350, 12, 30, 18, "Anzahl"


    WordBasic.Text 295, 59, 89, 18, "Kopien:"

    WordBasic.TextBox 350, 54, 30, 18, "Kopien"


    WordBasic.GroupBox 15, 6, 120, 70, "Seite 1"

    WordBasic.OptionGroup "OptionGroup1"

        WordBasic.OptionButton 25, 25, 150, 16, "Vordruck" 'fach 2

        WordBasic.OptionButton 25, 45, 150, 16, "Blanko" 'fach 1



    WordBasic.GroupBox 160, 6, 120, 70, "Folgende Seiten"

    WordBasic.OptionGroup "OptionGroup2"

        WordBasic.OptionButton 165, 25, 150, 16, "Blanko" 'fach1

        WordBasic.OptionButton 165, 45, 150, 16, "Vordruck" 'fach2


    WordBasic.OKButton 100, 87, 100, 21

    WordBasic.CancelButton 210, 87, 100, 21


WordBasic.EndDialog


Dim dlg As Object: Set dlg = WordBasic.CurValues.UserDialog


Rem ############################# Wenn Abbruch dann Ende Makro ######################

abbruch = WordBasic.Dialog.UserDialog(dlg)

If abbruch = 0 Then

    GoTo bye

End If


Rem ############################ Auslesen der Schachtauswahl Seite 1 ##############

Select Case dlg.OptionGroup1

    Case 0

        schachtauswahl1$ = Fach2


    Case 1

        schachtauswahl1$ = Fach1


End Select


Rem ############################ Auslesen der Schachtauswahl Folgende Seiten ##############

Select Case dlg.OptionGroup2

    Case 0

        schachtauswahl2$ = Fach1

    Case 1

        schachtauswahl2$ = Fach2

End Select


Rem ############################ Umwandlung der Anzahl in Zahlen ##############

exemplar1 = WordBasic.Val(dlg.anzahl)

exemplar2 = WordBasic.Val(dlg.kopien)



Rem ############################ Auslesen Seitenanzahl des Dokuments ##############

Dim stat As Object: Set stat = WordBasic.DialogRecord.DocumentStatistics(False)

    WordBasic.CurValues.DocumentStatistics stat

    anzseite = WordBasic.Val(stat.Pages)



Rem ############################ Zuweisung des Druckauftrags ##############



If exemplar1 > 0 Then


    ActivePrinter = "\\BELSQL\Kyocera Mita FS-1920 KX Bauamt"


    ActiveDocument.PageSetup.FirstPageTray = schachtauswahl1$

    ActiveDocument.PageSetup.OtherPagesTray = schachtauswahl2$


    ActiveDocument.PrintOut Copies:=exemplar1

End If



Rem ############################ Zuweisung des Druckauftrags ##############



If exemplar2 > 0 Then


    ActivePrinter = "\\BELSQL\Kyocera Mita FS-1920 KX Bauamt"


    ActiveDocument.PageSetup.FirstPageTray = Fach1

    ActiveDocument.PageSetup.OtherPagesTray = Fach1


    ActiveDocument.PrintOut Copies:=exemplar2

End If

Rem ############################ Sprungmarke für Abbruch ###############################

bye:


End Sub

Erstelle ein Konto oder melde dich an, um einen Kommentar zu schreiben.

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.