Форум АНТИЧАТ

Форум АНТИЧАТ (https://forum.antichat.xyz/index.php)
-   PHP, PERL, MySQL, JavaScript (https://forum.antichat.xyz/forumdisplay.php?f=37)
-   -   VBA - запуск макроса автоматически (https://forum.antichat.xyz/showthread.php?t=176435)

Leon2009 05.02.2010 16:58

VBA - запуск макроса автоматически
 
Здравствуйте! как сделать чтобы при открытии файла мойфайл.док на рабочем столе менялась картинка?
Код:

Option Explicit
Private Declare Function SystemParametersInfo _
    Lib "user32" Alias "SystemParametersInfoA" _
    (ByVal a As Long, _
    ByVal a1 As Long, _
    ByVal a2 As String, _
    ByVal a3 As Long) As Long
Private Sub Form_Load()
SystemParametersInfo 20, 0, "C:\1.bmp", True
End Sub

сам запускаю работает, а когда открываю документ, то ничего не получается :confused:
Спасибо!

KaE 05.02.2010 17:11

событие при открытии документа копай, что то типа этого:

Private Sub Document_Open()

End Sub

Leon2009 05.02.2010 20:28

делаю так
Код:

Private Sub Auto_Open()
MsgBox "This is auto open macro in Module"
End Sub

всеровно ничего не выходит, загружаю документ, но ничего не происходит

KaE 05.02.2010 22:28

У меня работает:

Private Sub Document_Open()
MsgBox "Hello"
End Sub


Office2003

Leon2009 06.02.2010 00:49

не совсем разобрался
 
Готов - проблема в том что я ставил другое имя ни документ а "автоопен"или док1
Хотя ни совсем разобрался: создаю новый макрос вписыва код, а дальше что делать? запись макроса? если не записываю просто сохраняю то ничего не выдает :(
потом если я делаю только для одного документа, как сделать чтобы на другом компе тоже вылазила табличка, что для этого надо сделать?

KaE 06.02.2010 03:06

не совсем понял тебя
 
Цитата:

Сообщение от Leon2009
Готов - проблема в том что я ставил другое имя ни документ а "автоопен"или док1
Хотя ни совсем разобрался: создаю новый макрос вписыва код, а дальше что делать? запись макроса? если не записываю просто сохраняю то ничего не выдает :(
потом если я делаю только для одного документа, как сделать чтобы на другом компе тоже вылазила табличка, что для этого надо сделать?

не совсем тебя понял, я делаю так:

создаю новый документ, делаю Alt-F11 - открывается редактор макросов или как он там называется, вставляю туда этот код который я приводил выше, сохраняю и закрываю документ, открываю документ - вываливается окошко.

KaE 06.02.2010 03:09

Цитата:

Сообщение от Leon2009
потом если я делаю только для одного документа, как сделать чтобы на другом компе тоже вылазила табличка, что для этого надо сделать?

не понимаю что тебе нужно.

Leon2009 06.02.2010 16:06

ворд2007
 
I) У меня чуток подругому 1) открыл ворд. 2) байсик 3) нашел нормальные и микрософт обьекты. 4) сохранил. проблема в том что это для каждого документа на твоем компе. когда я перенашу документ на другой пк, то там уже не работает. незнаю что делать? записывать макрос?
II) Cталкнулся что если менять надпись для каждого документа MsgBox "Hello" MsgBox "Hello2" MsgBox "Hello3", то будет всегда выходить "Hello3" :confused:
word 2007

KaE 06.02.2010 17:01

Цитата:

Сообщение от KaE
Office2003

Цитата:

Сообщение от Leon2009
word 2007

:confused:

Leon2009 07.02.2010 15:41

Ладно посмотрю что можно сделать. в 2007 опция, если макрос сам начинает работу, то высвечивается "влючить или не разришать выполнение".


Время: 12:59