Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

WORD ПЕрехват события сохранения документа

36K
11 июня 2008 года
MadMas
5 / / 11.06.2008
Нужно перехватить событие сохранение пользователем документа, дабы проверить правильность введения данных в поля формы. Как?
275
11 июня 2008 года
pashulka
985 / / 19.09.2004
Начиная с MS Word 2000 это можно сделать так : скопировать весь нижеопубликованный код в модуль ThisDocument нужного документа, после чего необходимо сохранить изменения. Теперь, если у Вас не установлен высокий уровень безопасности и при открытии никто не отключит макросы, то после следующего открытия этого документа (событие Document_Open), Вы получите желаемый результат.

Код:
Private WithEvents iWordApp As Word.Application

Private Sub Document_Open()
    Set iWordApp = Word.Application
End Sub

Private Sub iWordApp_DocumentBeforeSave(ByVal Doc As Document, SaveAsUI As Boolean, Cancel As Boolean)
    If Me Is Doc Then 'ThisDocument Is Doc
       Cancel = MsgBox( _
       "Сохранить [ Да ], Отказаться  [ Нет ]", vbYesNo, _
       "Предпринята попытка сохранить необходимый документ") = vbNo
       
       'Вышеприведённая инструкция используется для того, чтобы
       'показать возможность отмены сохранения :  Cancel = True
    End If
End Sub


Возможно Вам это и не пригодится, но всё-таки … формы позволяют выполнять нужный макрос, причём, сразу после внесения изменений.
Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог