Поиск  Пользователи  Правила 
Закрыть
Логин:
Пароль:
Забыли свой пароль?
Регистрация
Войти
 
Страницы: 1
RSS
Пауза после печати каждого листа
 
Уважаемые гуру форма, прошу совета. Ситуация такая: по команде на печать отправляется n-ое кол-во листов (2 накладных, 3 счет-фактуры и т.д.) да вдобавок таких "пакетов" документов может быть несколько. Все это работает. Теперь о проблеме: дуплекса на принтере нет, при этом распечатка двухстраничного документа на 2 листах мягко говоря не приветствуется руководством. Так вот городить что-то для ручной двусторонней печати (помните были варианты для работы принтера типа "выньте пачку листов и не перекладывая вновь положите в лоток") считаю неверным (и не знаю как и не представляю как это можно "объяснить" Excel, ведь документ в "пакете" совсем не обязательно будет на 2 страницах, может и на 1 и на 3 и вообще на любом кол-ве листов). Так вот что я задумал: после печати каждого листа приостанавливать печать на определенное время (3-5 сек.), за это время пользователь успеет определиться переворачивать этот лист и вставлять заново в принтер или нет. Конечно без внимания пользователя не обойдется, но хоть что-то, как говориться "за неимением гербовой..." Так вот, как лучше осуществить данную приостановку, через Application.Wait Now+TimeSerial(0,0,0) или как-то по иному? И еще, если указано например ActiveSheet.PrintOut Copies:=3, то как объяснить excel, что приостанавливать печать нужно после КАЖДОЙ страницы? Изменить строку на ActiveSheet.PrintOut Copies:=1 и повторить 3 раза? так ведь и это наверное не решение ведь в 1 копии повторюсь может быть N-ое кол-во страниц. Посоветуйте, как можно решить данный вопрос. Заранее спасибо всем откликнувшимся.
 
Это больше похоже на ручную работу, чем на автоматизацию )

Цитата
OlegO написал:  как объяснить excel, что приостанавливать печать нужно после КАЖДОЙ страницы?
Печатать в цикле по одной странице, с задержкой.
 
Подождите, vikttur немного не понял. Вот я выгрузил данные на лист, скрыл пустые строки, в итоге имею скажем 3 листа накладной. Как мне в таком случае запускать цикл на печать?
 
+ И надеюсь, что принтер не сетевой или хотяб монопольный. Иначе задания от разных пользователей  могут в перемешку пойти.
а вот подтверждение я б оставил. Или второй лист выводил на обходной лоток или лоток ручной подачи.
 
Цитата
vikttur написал:
Это больше похоже на ручную работу, чем на автоматизацию )
Ну, не совсем, ведь это касается только распечатки документов, В конце-концов посидеть рядом с принтером 3 минуты не так уж сложно, зато в результате весь пакет документов на руках
 
Код
For n = 1 To 2 ' копии 
    For i = 1 To 3 '  страницы
       .PrintOut From:=i, To:=i, Copies:=1, Collate:=True, IgnorePrintAreas:=False
        Application.Wait Time:=Now + TimeValue("0:00:05")
    Next i
Next n
 
Спасибо, vikttur, завтра на работе проверю. Я правильно понимаю что кол-во, страниц придется подсчитывать каждый раз (через кол-во разрывов)?
 
Цитата
БМВ написал:
И надеюсь, что принтер не сетевой или хотяб монопольный. Иначе задания от разных пользователей  могут в перемешку пойти.а вот подтверждение я б оставил.
БМВ, принтер хоть и имеет возможность для распечатки с другого ПК (не сам принтер сетевой, просто расшарен), но такой опасности практически нет, объемы далеко и далеко не велики. А вот насчет подтверждения не понял. Какое подтверждение, о чем?
 
Цитата
OlegO написал: кол-во, страниц придется подсчитывать каждый раз (через кол-во разрывов)?
Ну да:
Код
ActiveSheet.HPageBreaks.Count + 1
 
Еще раз искренне благодарю за помощь
 
Цитата
OlegO написал:
А вот насчет подтверждения не понял.
Забудьте. Если принтер не рядом, то это не имеет смысла.
Вот только пауза может не сработать. Например закончилась бумага и пока подкладывали, все копии уже будут в очереди и могут отпечататься подряд, если принтер не тормоз. А тогда надо контролировать что в очереди перед печатью.
 
И тут включается автоподвод руки оператора к кнопке "Пауза" (Do Events)
 
Цитата
БМВ написал:
Например закончилась бумага
Наверное, только уж все возможные варианты не предусмотришь, все равно альтернативой может быть только покупка принтера с дуплексом
 
OlegO, Есть праведные способы, такие как указанный дуплекс, а есть зверзские. Деловые Линии например и для скорости, и для экономии бумаги, некоторые документы печатают на A5, то есть 2 на одном A4, но с одной стороны. Зверский - по тому что шрифт уже становится порой нечитаем. Да и не все документы можно так. Но возможно это вы для себя используете.
Страницы: 1
Читают тему (гостей: 1)