У меня есть пользователь, которому нужно распечатать около 220 документов, в среднем по 2-3 страницы каждый. При печати стандартным методом Windows «Выбрать все» - «Щелкните правой кнопкой мыши» - «Печать» перегружается либо сервер печати, либо сам принтер. Я ищу утилиту, которая позволит мне обрабатывать, скажем, 5 документов за раз, которая будет обрабатывать все документы в данном каталоге. Я надеюсь, что это снизит нагрузку на сервер печати, а также позволит пользователю не присматривать за своими заданиями на печать. Я нашел тот, который позволяет вам планировать задание на печать на определенное время, но (и, возможно, это не является нарушением сделки) орфография в программе ужасна.
Отвечая на старый вопрос, чтобы заработать очки репутации: P
Этот VBS открывает и печатает документ Word:
Set objWord = CreateObject("Word.Application")
Set objDoc = objWord.Documents.Open("c:\scripts\inventory.doc")
objDoc.PrintOut()
objWord.Quit
Этот VBS перебирает файлы в папке:
Set objFSO = CreateObject("Scripting.FileSystemObject")
objStartFolder = "C:\Scripts"
Set objFolder = objFSO.GetFolder(objStartFolder)
Set colFiles = objFolder.Files
For Each objFile in colFiles
Wscript.Echo objFile.Name
Next
Эта VBS заставляет ПК ждать 60 секунд, чтобы не перегружать сервер печати:
WScript.sleep 60000
Объединяя их:
Set objFSO = CreateObject("Scripting.FileSystemObject")
objStartFolder = "C:\Scripts"
Set objFolder = objFSO.GetFolder(objStartFolder)
Set colFiles = objFolder.Files
For Each objFile in colFiles
Set objWord = CreateObject("Word.Application")
Set objDoc = objWord.Documents.Open(objFile)
objDoc.PrintOut()
objWord.Quit
WScript.sleep 60000
Next
Измените "objStartFolder" на папку, в которой расположены документы Word, и убедитесь, что в этой папке есть только документы Word. Сохраните этот код в текстовый файл и измените расширение на «vbs». Его можно запустить двойным щелчком или планировщиком Windows, так что вы можете запускать его посреди ночи или нет.
(Предполагая, что вы говорите о MS Word) Я ни в коем случае не эксперт по Word, но вы могли бы использовать немного VBA, чтобы добиться цели, запустив winword.exe из скрипта. Я видел, как это было сделано, но никогда не принимал достаточного участия, чтобы предоставить дополнительную информацию.