OVH Cloud OVH Cloud

Démarrage automatique

5 réponses
Avatar
Gwénolé de Fréminville
Je voudrais qu'une macro démarre automatiquement lorsque l'on ouvre le
fichier Toto.xls et pas un autre.
Je sais qu'en nommant la macro Auto_Open elle démarre automatiquement, mais
ce que je voudrais c'est pouvoir empêcher qu'elle démarre lorsque je ne le
veux pas !
Dans l'aide d'Excel il est écrit que l'on doit pour cela appuyer sur la
touche MAJ en lançant le fichier xls, mais cela ne fonctionne pas, la macro
d'exécute toujours.
Comment puis-je faire ?
Est-il possible de tester dans la macro si la touche MAJ, ou une autre, est
enfoncée ?

5 réponses

Avatar
GeoTrouvePasTout
bonjour Gwenolé,
Excel est un outil très puissant, mais de là à ce qu'il
sache ce que tu veux !!
Tu ne peux pas inverser le problème et de lui faire
déclencher la macro par une action ? Exemple combinaison
de touches (Alt-qquechose)
amicalement
-----Message d'origine-----
Je voudrais qu'une macro démarre automatiquement lorsque
l'on ouvre le

fichier Toto.xls et pas un autre.
Je sais qu'en nommant la macro Auto_Open elle démarre
automatiquement, mais

ce que je voudrais c'est pouvoir empêcher qu'elle
démarre lorsque je ne le

veux pas !
Dans l'aide d'Excel il est écrit que l'on doit pour cela
appuyer sur la

touche MAJ en lançant le fichier xls, mais cela ne
fonctionne pas, la macro

d'exécute toujours.
Comment puis-je faire ?
Est-il possible de tester dans la macro si la touche
MAJ, ou une autre, est

enfoncée ?


.



Avatar
Philippe.R
Bonjour,
(Non, non, ce n'est pas insultant)

Dans la macro auto_open, ou bien dans la procédure open du module thisworkbook, la ligne :

If ThisWorkbook.Name <> "Toto" Then exit sub

devrait convenir
--
Amicales Salutations
Retirer A_S_ pour répondre.
XL 97 / 2000 / 2002
Pour suivre le forum :
news://msnews.microsoft.com/microsoft.public.fr.excel
(Voulez-vous vous abonner ? -> Oui)

"Gwénolé de Fréminville" a écrit dans le message de
news:
Je voudrais qu'une macro démarre automatiquement lorsque l'on ouvre le
fichier Toto.xls et pas un autre.
Je sais qu'en nommant la macro Auto_Open elle démarre automatiquement, mais
ce que je voudrais c'est pouvoir empêcher qu'elle démarre lorsque je ne le
veux pas !
Dans l'aide d'Excel il est écrit que l'on doit pour cela appuyer sur la
touche MAJ en lançant le fichier xls, mais cela ne fonctionne pas, la macro
d'exécute toujours.
Comment puis-je faire ?
Est-il possible de tester dans la macro si la touche MAJ, ou une autre, est
enfoncée ?




Avatar
Pascal Engelmajer
Salut, (formule de politesse recommandée par l'usage voir
http://www.excelabo.net/mpfe/connection.htm)
Normalement MAJ suffit !!!
mais on peut rajouter une couche...
Private Declare Function GetKeyState Lib "user32" (ByVal nVirtKey As Long)
As Integer
Sub Auto_Open()
Const VK_SHIFT = 16 'shift
If GetKeyState(VK_SHIFT) < 0 Then
MsgBox "Procédure de démarrage stoppée par l'utilisateur",
vbInformation, "Workbook_Open"
Exit Sub
End If
'suite de la procédure
MsgBox "suite"

End Sub
--
Amicalement.(voir plus haut)
Pascal
"il n'y a pas de vent favorable pour celui qui ne sait pas ou il va."
Sénèque.
http://www.ilyapa.net/excel
http://www.ilyapa.net/baseExcel
"Gwénolé de Fréminville" a écrit dans le message
de news:
Je voudrais qu'une macro démarre automatiquement lorsque l'on ouvre le
fichier Toto.xls et pas un autre.
Je sais qu'en nommant la macro Auto_Open elle démarre automatiquement,
mais

ce que je voudrais c'est pouvoir empêcher qu'elle démarre lorsque je ne le
veux pas !
Dans l'aide d'Excel il est écrit que l'on doit pour cela appuyer sur la
touche MAJ en lançant le fichier xls, mais cela ne fonctionne pas, la
macro

d'exécute toujours.
Comment puis-je faire ?
Est-il possible de tester dans la macro si la touche MAJ, ou une autre,
est

enfoncée ?




Avatar
Gwénolé
Pardon pour mon incorrection, emporté par mon élan et un peu de
précipitation, j'ai omis les salutations d'usage :-(
Merci pour vos réponses.
Avatar
Gwénolé
Merci Pascal, c'est parfait.
Gwénolé :-)

"Pascal Engelmajer" a écrit dans le
message de news:
Salut, (formule de politesse recommandée par l'usage voir
http://www.excelabo.net/mpfe/connection.htm)
Normalement MAJ suffit !!!
mais on peut rajouter une couche...
Private Declare Function GetKeyState Lib "user32" (ByVal nVirtKey As Long)
As Integer
Sub Auto_Open()
Const VK_SHIFT = 16 'shift
If GetKeyState(VK_SHIFT) < 0 Then
MsgBox "Procédure de démarrage stoppée par l'utilisateur",
vbInformation, "Workbook_Open"
Exit Sub
End If
'suite de la procédure
MsgBox "suite"

End Sub
--
Amicalement.(voir plus haut)
Pascal
"il n'y a pas de vent favorable pour celui qui ne sait pas ou il va."
Sénèque.
http://www.ilyapa.net/excel
http://www.ilyapa.net/baseExcel
"Gwénolé de Fréminville" a écrit dans le
message

de news:
Je voudrais qu'une macro démarre automatiquement lorsque l'on ouvre le
fichier Toto.xls et pas un autre.
Je sais qu'en nommant la macro Auto_Open elle démarre automatiquement,
mais

ce que je voudrais c'est pouvoir empêcher qu'elle démarre lorsque je ne
le


veux pas !
Dans l'aide d'Excel il est écrit que l'on doit pour cela appuyer sur la
touche MAJ en lançant le fichier xls, mais cela ne fonctionne pas, la
macro

d'exécute toujours.
Comment puis-je faire ?
Est-il possible de tester dans la macro si la touche MAJ, ou une autre,
est

enfoncée ?