Hallo liebe Programmiergemeinde,
ich stehe vor folgendem Problem und hoffe auf Eure Unterstützung:
Ich muss regelmäßig mehrere Word 2010-Dokumente (ca. 150 Stück) ausdrucken, welche sich alle in einem Ordner befinden, dabei muss die Reihenfolge unbedingt stimmen. Theoretisch könnte man alle Dateien dieses Ordners markieren und mit der rechten Maustaste "Drucken" wählen, leider wurde diese Funktion per Policy deaktiviert.
Als Mittel zum Zweck habe ich nun ein kleines VB-Script im Netz gefunden, welches meinen Ansprüchen fast gerecht wird. Man zieht den gewünschten Ordner auf das Script, worauf dann alle darin vorhandenen Word-Dateien der Reihe nach am Standard-Drucker ausgedruckt werden. Leider habe ich dabei das Problem, dass der Script-Ablauf nach dem Druck der 4. Datei mit folgender Meldung stehen bleibt:
"Microsoft Word kann nicht geschlossen werden, weil noch ein Dialogfeld göffnet ist. Klicken Sie auf 'OK', wechseln Sie dann zu Word, und schlißen Sie das Dialogfeld"
Weiters würde ich gerne im Vorfeld angeben können, wie oft der Druck wiederholt werden soll bzw. wie oft der Ordnerinhalt gedruckt werden soll, wäre das per Schleife umzusetzen? Dieser soll nach Druck des letzten Dokuments wieder mit dem ersten Dokument anfangen, das ist wichtig da ich ansonsten alle Dokumente händisch in die richtige Reihenfolge sortieren müsste. Könnt Ihr mir da bitte weiterhelfen?
Mein Script sieht momentan wie folgt aus:
ich stehe vor folgendem Problem und hoffe auf Eure Unterstützung:
Ich muss regelmäßig mehrere Word 2010-Dokumente (ca. 150 Stück) ausdrucken, welche sich alle in einem Ordner befinden, dabei muss die Reihenfolge unbedingt stimmen. Theoretisch könnte man alle Dateien dieses Ordners markieren und mit der rechten Maustaste "Drucken" wählen, leider wurde diese Funktion per Policy deaktiviert.
Als Mittel zum Zweck habe ich nun ein kleines VB-Script im Netz gefunden, welches meinen Ansprüchen fast gerecht wird. Man zieht den gewünschten Ordner auf das Script, worauf dann alle darin vorhandenen Word-Dateien der Reihe nach am Standard-Drucker ausgedruckt werden. Leider habe ich dabei das Problem, dass der Script-Ablauf nach dem Druck der 4. Datei mit folgender Meldung stehen bleibt:
"Microsoft Word kann nicht geschlossen werden, weil noch ein Dialogfeld göffnet ist. Klicken Sie auf 'OK', wechseln Sie dann zu Word, und schlißen Sie das Dialogfeld"
Weiters würde ich gerne im Vorfeld angeben können, wie oft der Druck wiederholt werden soll bzw. wie oft der Ordnerinhalt gedruckt werden soll, wäre das per Schleife umzusetzen? Dieser soll nach Druck des letzten Dokuments wieder mit dem ersten Dokument anfangen, das ist wichtig da ich ansonsten alle Dokumente händisch in die richtige Reihenfolge sortieren müsste. Könnt Ihr mir da bitte weiterhelfen?
Mein Script sieht momentan wie folgt aus:
Quellcode
- 'print_docx.vbs
- sSourceFolder = false
- If WScript.Arguments.Count > 0 Then
- sSourceFolder = WScript.Arguments(0)
- End If
- Set fso = CreateObject("Scripting.FileSystemObject")
- If Not fso.FolderExists(sSourceFolder) Then
- WScript.Echo "Es wurde kein Ordner angegeben."
- WScript.Quit(2)
- Else
- bPrintet = False
- Set oShellApp = WScript.CreateObject("Shell.Application")
- For Each oFile In fso.GetFolder(sSourceFolder).Files
- If InstrRev(oFile.Name, ".") Then
- If LCase(Mid(oFile.Name, InstrRev(oFile.Name, "."))) = ".docx" Then
- oShellApp.ShellExecute oFile.Path, "", "", "print", 0
- bPrinted = True
- WScript.Sleep(5180)
- End If
- End If
- Next
- Set oShellApp = Nothing
- If Not bPrinted Then
- WScript.Echo "Es konnte kein Word-Dokument zum Drucken gefunden werden."
- WScript.Quit(1)
- End If
- End If
Dieser Beitrag wurde bereits 2 mal editiert, zuletzt von „wurstsemmerl“ ()