Перехват печати документов Word
От: Караваха Россия  
Дата: 23.04.03 13:24
Оценка:
Всем добрый вечер.
Подскажите, как можно перехватить событие печати документов Word и вывести к примеру свое диалоговое окно перед печатью?
В идеале надо бы еще добавить на печатаемые страницы кое-какую информацию, но это потом.
Подразумеваю, что нужно упирать на макросы...
Всем спасибо.
Re: Перехват печати документов Word
От: SiNick  
Дата: 24.04.03 13:54
Оценка: 10 (1)
Здравствуйте, Караваха, Вы писали:

К>Подскажите, как можно перехватить событие печати документов Word и вывести к примеру свое диалоговое окно перед печатью?


Ставим References на Word и пишем

  Dim WithEvents W As Word.Application


WithEvents — потянет за собой все события ворда, в том числе и

Private Sub W_DocumentBeforePrint(ByVal Doc As Word.Document, Cancel As Boolean)
   'свое диалоговое окно     
End Sub
Re[2]: Перехват печати документов Word
От: Аноним  
Дата: 24.04.03 14:03
Оценка:
Здравствуйте, SiNick, Вы писали:


SN>Ставим References на Word

SN>WithEvents — потянет за собой все события ворда

А как бы вызвать стандартный диалог печати, и получить то, что там введено. Например, количество копий.
Re[3]: Перехват печати документов Word
От: SiNick  
Дата: 24.04.03 14:20
Оценка:
Здравствуйте, Аноним, Вы писали:


А>А как бы вызвать стандартный диалог печати, и получить то, что там введено. Например, количество копий.


Добавляем в проект Microsoft Common Dialog control
Бросаем на форму CommonDialog и пишем

Private Sub Command1_Click()
    Dim cop As Integer
    CommonDialog1.ShowPrinter
    cop = CommonDialog1.Copies
End Sub
Re[4]: Перехват печати документов Word
От: Аноним  
Дата: 24.04.03 14:29
Оценка: :)
Здравствуйте, SiNick, Вы писали:

А>А как бы вызвать стандартный диалог печати, и получить то, что там введено. Например, количество копий.


SN>Добавляем в проект Microsoft Common Dialog control


Что-то мне подсказывает, что Common Print диалог и стандартный оффисный диалог печати — не одно и то же. Или я не прав? Не хотелось бы шокировать пользователя
Re[5]: Перехват печати документов Word
От: Аноним  
Дата: 25.04.03 06:15
Оценка:
Здравствуйте, Аноним, Вы писали:

А>Что-то мне подсказывает, что Common Print диалог и стандартный оффисный диалог печати — не одно и то же. Или я не прав? Не хотелось бы шокировать пользователя


Ну тогда так:

Dim E As Excel.Application
Set E = New Application
E.Workbooks.Add
E.Dialogs(xlDialogPrint).Show
Re[6]: Перехват печати документов Word
От: SiNick  
Дата: 25.04.03 06:25
Оценка:
А>
А>Dim E As Excel.Application
А>Set E = New Application
А>E.Workbooks.Add
А>E.Dialogs(xlDialogPrint).Show
А>

Забыл уточнить. Если мы делаем это из макроса, то конечно новый экзепрляр екселя создавать не нужно. Таким же макаром можно отобразить любой диалог екселя с любыми параметрами(аргументы в Show). Всего этих диалогов в коллекции около 700.
Re: Перехват печати документов Word
От: Аноним  
Дата: 27.01.06 14:09
Оценка:
Здравствуйте, Караваха, Вы писали:

К>Всем добрый вечер.

К>Подскажите, как можно перехватить событие печати документов Word и вывести к примеру свое диалоговое окно перед печатью?
К>В идеале надо бы еще добавить на печатаемые страницы кое-какую информацию, но это потом.
К>Подразумеваю, что нужно упирать на макросы...
К>Всем спасибо.

с добавлением своей инфы на печатаемую страницу кто-нибудь разбирался ?
Re[2]: Перехват печати документов Word
От: ZAMUNDA Земля для жалоб и предложений
Дата: 28.01.06 23:37
Оценка:
А>с добавлением своей инфы на печатаемую страницу кто-нибудь разбирался ?
Тебе ж показали:

Private Sub W_DocumentBeforePrint(ByVal Doc As Word.Document, Cancel As Boolean)
   'свое диалоговое окно     
End Sub

Там Doc, это документ, который печататься будет. Ты волен делать с его содержимым почти любые мерзости.
Наука изощряет ум; ученье вострит память.
(c) Козьма Прутков
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.