Консультация № 139229
05.06.2008, 21:58
0.00 руб.
0 1 1
Здравствуйте, уважаемые эксперты!
Вопрос: Начальство желает контролировать своих служащих. Желает знать сколько договоров оформлено за день (неделю, месяц). Вот меня и озадачило.

Контора занимается оформлением однотипных договоров, меняются только фамилии клиентов, адреса и прочие реквизиты. Я было настроил Word - через команду «слияние». Все довольны, кроме начальства: нет контроля. Вдруг мимо кассы какой договор оформят?
Попытался сделать через Access. Не смог обойти противоречие: надо запретить редактирование уже готового договора, и в тоже время разрешить исправление опечаток.

Вчера начальство поставило вопрос ребром. Или я придумываю что-то вроде: при отправке на печать формируется копия печатаемого файла и отправляется в скрытую папку. Или нанимают вместо меня другого.
Конкретные вопросы:
1. Можно ли средствами MS Office формировать копию файла при подаче команды «печатать» и отправлять полученный файл в определённую папку? Желательно незаметно для пользователя.
2. Можно ли в Access, при выполнении команды печать, обязательно добавлять новую строку в базу данных? С данными которые отправились на печать.

Если можно – ответы с примерами, пожалуйста. Потому что я самоучка, и некоторые вещи совсем не знаю.

Или какие другие идеи есть? по контролю

Обсуждение

давно
Специалист
399094
201
08.06.2008, 18:52
общий
это ответ
Здравствуйте, Меннибаев Самат Маисович / Som!
По поводу вопроса 1. Можно для этого вам надо использовать встроенный язык VBA
Вот код
Private Sub Document_Open()
InitEvents
End Sub

‘Модуль 1
Dim x As New AppEvents
Public Sub InitEvents()
Set x.appWord = Application
End Sub
‘Class Module AppEvents
Public WithEvents appWord As Word.Application

Private Sub appWord_DocumentBeforePrint _
(ByVal Doc As Document, _
Cancel As Boolean)
‘ChDir ("Путь куда сохранять")
Doc.SaveAs FileName:="Duplicate ", _
FileFormat:=wdFormatDocument
End Sub
Форма ответа