Шаблоны Word

Программирование на Visual Basic for Applications
denisp
Начинающий
Начинающий
 
Сообщения: 17
Зарегистрирован: 23.06.2004 (Ср) 10:07
Откуда: Санкт-Петербург

Шаблоны Word

Сообщение denisp » 22.09.2004 (Ср) 8:27

Проблема в следующем. Я создал собственный шаблон документа и разместил его так, чтоб он загружался автоматически при запуске Word. Шаблон загружается все ок , но тут появилась следующая проблема. При открытии любого доумента мне необходимо производить определенное действия с ним. Я добавил в шаблон документа функцию на событие Open, но почему-то она не работает???? :?:

tyomitch
Пользователь #1352
Пользователь #1352
Аватара пользователя
 
Сообщения: 12822
Зарегистрирован: 20.10.2002 (Вс) 17:02
Откуда: חיפה

Сообщение tyomitch » 22.09.2004 (Ср) 12:03

denisp, Document_Open реагирует только на открытие документа, созданного на этом шаблоне.
Лови Application_DocumentOpen
Изображение

denisp
Начинающий
Начинающий
 
Сообщения: 17
Зарегистрирован: 23.06.2004 (Ср) 10:07
Откуда: Санкт-Петербург

Сообщение denisp » 22.09.2004 (Ср) 12:40

а как это правильно сделать?

tyomitch
Пользователь #1352
Пользователь #1352
Аватара пользователя
 
Сообщения: 12822
Зарегистрирован: 20.10.2002 (Вс) 17:02
Откуда: חיפה

Сообщение tyomitch » 22.09.2004 (Ср) 14:33

denisp писал(а):а как это правильно сделать?

http://msdn.microsoft.com/library/en-us ... Events.asp
Изображение

denisp
Начинающий
Начинающий
 
Сообщения: 17
Зарегистрирован: 23.06.2004 (Ср) 10:07
Откуда: Санкт-Петербург

Сообщение denisp » 22.09.2004 (Ср) 16:29

Что-то не получается.
Я Делалаю как написано в доке
Создал класс , объвил переменную, создал функцию из выподающего списка, далее создал модуль как написанно в примере , а после запустил на выполнение функцию, не чего не получилось.
да я все это делаю в своем шаблоне.

LeoCh
Начинающий
Начинающий
 
Сообщения: 10
Зарегистрирован: 22.09.2004 (Ср) 8:52

Сообщение LeoCh » 22.09.2004 (Ср) 16:31

Я извиняюсь, но мне кажется это немного не то или я чего-то не понял. Меня вот тоже сильно интересует, как отловить открытие документа из чужого шаблона.

denisp
Начинающий
Начинающий
 
Сообщения: 17
Зарегистрирован: 23.06.2004 (Ср) 10:07
Откуда: Санкт-Петербург

Сообщение denisp » 22.09.2004 (Ср) 16:54

Вот из Normal.dot все получается хорошо, но из своего шаблона нет.

tyomitch
Пользователь #1352
Пользователь #1352
Аватара пользователя
 
Сообщения: 12822
Зарегистрирован: 20.10.2002 (Вс) 17:02
Откуда: חיפה

Сообщение tyomitch » 22.09.2004 (Ср) 17:00

Всё работает.
Детальные инструкции:
1) добавьте класс; его имя по умолчанию будет Class1
добавьте в него код:
Код: Выделить всё
Public WithEvents App As Word.Application

Private Sub App_DocumentOpen(ByVal Doc As Document)
    StatusBar = "Âû îòêðûëè äîêóìåíò: " & Doc
End Sub

2) добавьте модуль; его имя по умолчанию будет Module1
добавьте в него код:
Код: Выделить всё
Dim X As New Class1

Sub AutoExec()
    Set X.App = Word.Application
End Sub

3) сохраните макрос, перезапустите Word. Всё работает.
Изображение

denisp
Начинающий
Начинающий
 
Сообщения: 17
Зарегистрирован: 23.06.2004 (Ср) 10:07
Откуда: Санкт-Петербург

Сообщение denisp » 23.09.2004 (Чт) 8:27

Здорово! :lol: Все получилось!!!! Огромное спасибо.
Но самое интересное , что я делал так же.

LeoCh
Начинающий
Начинающий
 
Сообщения: 10
Зарегистрирован: 22.09.2004 (Ср) 8:52

Сообщение LeoCh » 27.09.2004 (Пн) 8:58

Класс!
Но мне надо для Word 97

denisp
Начинающий
Начинающий
 
Сообщения: 17
Зарегистрирован: 23.06.2004 (Ср) 10:07
Откуда: Санкт-Петербург

Сообщение denisp » 27.09.2004 (Пн) 9:40

я поставлю office 97 и проверю работает мой шаблон в обед скажу


Вернуться в VBA

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 56

    TopList  
cron