Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

macro à la fermeture d'Excel

11 réponses
Avatar
Dominique MARTIN
bonjour,

Quelqu'un a-t-il une idée pour lancer à la fermeture d'Excel une macro que
j'ai écrite ?
j'ai essayé avec l'évènement before_close du classeur Perso.xls mais cela ne
marche pas.

Merci pour votre aide.
Dominique

10 réponses

1 2
Avatar
isabelle
bonjour Dominique,

bonjour,
Quelqu'un a-t-il une idée pour lancer à la fermeture d'Excel une macro que
j'ai écrite ?
j'ai essayé avec l'évènement before_close du classeur Perso.xls mais cela ne
marche pas.


j'ai fais un test et la procedure s'execute bien, qu'est qui ne fonctionne pas ?

isabelle

Avatar
Jacky
Bonjour,

j'ai essayé avec l'évènement before_close du classeur Perso.xls mais cela
ne
marche pas.


Sauf s'il y a un "Application.EnableEvents = False" en cours
il n'y a aucune raison que cela ne fonctionne pas.
Essaie ceci:
http://cjoint.com/?kdolZR5vrE

--
Salutations
JJ


"Dominique MARTIN" a écrit dans
le message de news:
bonjour,

Quelqu'un a-t-il une idée pour lancer à la fermeture d'Excel une macro que
j'ai écrite ?
j'ai essayé avec l'évènement before_close du classeur Perso.xls mais cela
ne
marche pas.

Merci pour votre aide.
Dominique


Avatar
papou
Bonjour Dominique
S'il s'agit de déclencher une macro à la fermeture d'Excel (l'application
elle-même et non pas un classeur quel qu'il soit), je ne vois pas comment tu
pourras faire avec Excel.
En revanche il y a peut-être (?) des possibilités en langage de
développement.
Tu peux essayer de poser ta question sur microsoft.public.fr.vb

Cordialement
Pascal

"Dominique MARTIN" a écrit dans
le message de news:
bonjour,

Quelqu'un a-t-il une idée pour lancer à la fermeture d'Excel une macro que
j'ai écrite ?
j'ai essayé avec l'évènement before_close du classeur Perso.xls mais cela
ne
marche pas.

Merci pour votre aide.
Dominique


Avatar
Dominique MARTIN
Bonjour,

Merci pour ton exemple.
ton exemple ne marche qu'à la fermeture du classeur et non à la fermeture
d'Excel.

Moi je voudrais que la macro se déclenche à la fermeture d'Excel quelque
soit le classeur chargé.

Merci
Dominique


Bonjour,

j'ai essayé avec l'évènement before_close du classeur Perso.xls mais cela
ne
marche pas.


Sauf s'il y a un "Application.EnableEvents = False" en cours
il n'y a aucune raison que cela ne fonctionne pas.
Essaie ceci:
http://cjoint.com/?kdolZR5vrE

--
Salutations
JJ


"Dominique MARTIN" a écrit dans
le message de news:
bonjour,

Quelqu'un a-t-il une idée pour lancer à la fermeture d'Excel une macro que
j'ai écrite ?
j'ai essayé avec l'évènement before_close du classeur Perso.xls mais cela
ne
marche pas.

Merci pour votre aide.
Dominique









Avatar
Dominique MARTIN
Bonjour,

Merci pour ta réponse.
Il s'agit bien de déclencher une macro à la fermeture d'Excel (l'application
elle-même et non pas un classeur quel qu'il soit).
Pourtant avec le classeur Perso.xls on peut lancer une macro à l'ouverture
d'excel par l'évènement Open du classeur Perso.xls.
Je vais poser la question sur le groupe microsoft.public.fr.vb.

Merci
Dominique


Bonjour Dominique
S'il s'agit de déclencher une macro à la fermeture d'Excel (l'application
elle-même et non pas un classeur quel qu'il soit), je ne vois pas comment tu
pourras faire avec Excel.
En revanche il y a peut-être (?) des possibilités en langage de
développement.
Tu peux essayer de poser ta question sur microsoft.public.fr.vb

Cordialement
Pascal

"Dominique MARTIN" a écrit dans
le message de news:
bonjour,

Quelqu'un a-t-il une idée pour lancer à la fermeture d'Excel une macro que
j'ai écrite ?
j'ai essayé avec l'évènement before_close du classeur Perso.xls mais cela
ne
marche pas.

Merci pour votre aide.
Dominique







Avatar
isabelle
bonjour Dominique,

pour faire le test j'ai mis la procédure suivante dans le thisworbook d'un nouveau classeur,

Private Sub Workbook_BeforeClose(Cancel As Boolean)
MsgBox "hello"
End Sub

j'ai enregistrer le classeur dans le répertoire xlStart sous l'extention zaza.xla
fermer excel, l'ouvrir et le refermer.

isabelle


Bonjour,

Merci pour ton exemple.
ton exemple ne marche qu'à la fermeture du classeur et non à la fermeture
d'Excel.

Moi je voudrais que la macro se déclenche à la fermeture d'Excel quelque
soit le classeur chargé.

Merci
Dominique



Bonjour,


j'ai essayé avec l'évènement before_close du classeur Perso.xls mais cela
ne
marche pas.


Sauf s'il y a un "Application.EnableEvents = False" en cours
il n'y a aucune raison que cela ne fonctionne pas.
Essaie ceci:
http://cjoint.com/?kdolZR5vrE

--
Salutations
JJ


"Dominique MARTIN" a écrit dans
le message de news:

bonjour,

Quelqu'un a-t-il une idée pour lancer à la fermeture d'Excel une macro que
j'ai écrite ?
j'ai essayé avec l'évènement before_close du classeur Perso.xls mais cela
ne
marche pas.

Merci pour votre aide.
Dominique











Avatar
lSteph
Bonjour,

Déjà avec perso cela devrait fonctionner...
(un détail à ce propos à voir après plus bas...)*

Surtout
L'exemple d'Isabelle marche fort bien à la fermeture d'excel.

J'étais en train de tester une solution analogue.

Tu mets une macro dans Perso.xls

Sub macroQuandquit()
MsgBox "Au revoir"

End Sub

Tu crée un fichier quand_quit.xls que tu enregistre dans xlstart ou
xlouvrir
suivant ta version.Et tu mets ceci dans le thisworkbook de quand_quit
...

Private Sub Workbook_BeforeClose(Cancel As Boolean)
Application.Run "perso.xls!macroQuandquit"
End Sub

Private Sub Workbook_Open()
Feuil1.[a1] = Now
End Sub

...
puis avec thisworkbook sélectionné dans l'explorateur de projet
tu affiche la fenêtre des propriétés mets isAddin à true
tu enregistre.

Ainsi le fichier sera ouvert en même temps qu' excel et ne se verra
pas
c'est lui qui appellera la macro de perso.xls quand on ferme excel.

quelque
soit le classeur chargé.
*Nota à ce propos et celui de qui ne marcherait pas ni avec perso ni

avec un autre:
si la session excel est issue d'un createobject ou ouverture d'un
(pseudo) fichier excel issu d'une autre application, il est possible
qu'excel soit ouvert sans perso et sans autres compléments , ainsi
adios les evennements prévus!

Cordialement.

--
lSteph

On 3 oct, 14:45, Dominique MARTIN
wrote:
Bonjour,

Merci pour ton exemple.
ton exemple ne marche qu'à la fermeture du classeur et non à la ferme ture
d'Excel.

Moi je voudrais que la macro se déclenche à la fermeture d'Excel quel que
soit le classeur chargé.

Merci
Dominique


Bonjour,

j'ai essayé avec l'évènement before_close du classeur Perso.xls mais cela
ne
marche pas.


Sauf s'il y a un "Application.EnableEvents = False" en cours
il n'y a aucune raison que cela ne fonctionne pas.
Essaie ceci:
http://cjoint.com/?kdolZR5vrE

--
Salutations
JJ

"Dominique MARTIN" a écri t dans
le message denews: 2226178B-6382-4D39-BF5B-EA9A32913__BEGIN_MASK_n#9g02 mG7!__...__END_MASK_i?a63jfAD$
bonjour,

Quelqu'un a-t-il une idée pour lancer à la fermeture d'Excel une macro que
j'ai écrite ?
j'ai essayé avec l'évènement before_close du classeur Perso.xls mais cela
ne
marche pas.

Merci pour votre aide.
Dominique






Avatar
Dominique MARTIN
Bonjour,

Merci beaucoup cela marche.
Ce qui est curieux : on ne voit pas qu'il référence la macro compléentaire
donc il faut faire attention au déploiement.

Merci

dominique


bonjour Dominique,

pour faire le test j'ai mis la procédure suivante dans le thisworbook d'un nouveau classeur,

Private Sub Workbook_BeforeClose(Cancel As Boolean)
MsgBox "hello"
End Sub

j'ai enregistrer le classeur dans le répertoire xlStart sous l'extention zaza.xla
fermer excel, l'ouvrir et le refermer.

isabelle


Bonjour,

Merci pour ton exemple.
ton exemple ne marche qu'à la fermeture du classeur et non à la fermeture
d'Excel.

Moi je voudrais que la macro se déclenche à la fermeture d'Excel quelque
soit le classeur chargé.

Merci
Dominique



Bonjour,


j'ai essayé avec l'évènement before_close du classeur Perso.xls mais cela
ne
marche pas.


Sauf s'il y a un "Application.EnableEvents = False" en cours
il n'y a aucune raison que cela ne fonctionne pas.
Essaie ceci:
http://cjoint.com/?kdolZR5vrE

--
Salutations
JJ


"Dominique MARTIN" a écrit dans
le message de news:

bonjour,

Quelqu'un a-t-il une idée pour lancer à la fermeture d'Excel une macro que
j'ai écrite ?
j'ai essayé avec l'évènement before_close du classeur Perso.xls mais cela
ne
marche pas.

Merci pour votre aide.
Dominique














Avatar
Dominique MARTIN
Bonjour,

Merci pour ta réponse qui rejoint la réponse d'isabelle.
A mon avis il ne doit pas y avoir de différence entre un xla et un xls avec
la propriété isAddin à True.

Merci
Dominique


Bonjour,

Déjà avec perso cela devrait fonctionner...
(un détail à ce propos à voir après plus bas...)*

Surtout
L'exemple d'Isabelle marche fort bien à la fermeture d'excel.

J'étais en train de tester une solution analogue.

Tu mets une macro dans Perso.xls

Sub macroQuandquit()
MsgBox "Au revoir"

End Sub

Tu crée un fichier quand_quit.xls que tu enregistre dans xlstart ou
xlouvrir
suivant ta version.Et tu mets ceci dans le thisworkbook de quand_quit
....

Private Sub Workbook_BeforeClose(Cancel As Boolean)
Application.Run "perso.xls!macroQuandquit"
End Sub

Private Sub Workbook_Open()
Feuil1.[a1] = Now
End Sub

....
puis avec thisworkbook sélectionné dans l'explorateur de projet
tu affiche la fenêtre des propriétés mets isAddin à true
tu enregistre.

Ainsi le fichier sera ouvert en même temps qu' excel et ne se verra
pas
c'est lui qui appellera la macro de perso.xls quand on ferme excel.

quelque
soit le classeur chargé.
*Nota à ce propos et celui de qui ne marcherait pas ni avec perso ni

avec un autre:
si la session excel est issue d'un createobject ou ouverture d'un
(pseudo) fichier excel issu d'une autre application, il est possible
qu'excel soit ouvert sans perso et sans autres compléments , ainsi
adios les evennements prévus!

Cordialement.

--
lSteph

On 3 oct, 14:45, Dominique MARTIN
wrote:
Bonjour,

Merci pour ton exemple.
ton exemple ne marche qu'à la fermeture du classeur et non à la fermeture
d'Excel.

Moi je voudrais que la macro se déclenche à la fermeture d'Excel quelque
soit le classeur chargé.

Merci
Dominique


Bonjour,

j'ai essayé avec l'évènement before_close du classeur Perso.xls mais cela
ne
marche pas.


Sauf s'il y a un "Application.EnableEvents = False" en cours
il n'y a aucune raison que cela ne fonctionne pas.
Essaie ceci:
http://cjoint.com/?kdolZR5vrE

--
Salutations
JJ

"Dominique MARTIN" a écrit dans
le message denews: 2226178B-6382-4D39-BF5B-EA9A32913__BEGIN_MASK_n#9g02mG7!__...__END_MASK_i?a63jfAD$
bonjour,

Quelqu'un a-t-il une idée pour lancer à la fermeture d'Excel une macro que
j'ai écrite ?
j'ai essayé avec l'évènement before_close du classeur Perso.xls mais cela
ne
marche pas.

Merci pour votre aide.
Dominique











Avatar
lSteph
Re,

Merci pour ta réponse qui rejoint la réponse d'isabelle.



En fait j'avais pris ta réponsà Jacky pour une réponse à la
proposition d'Isabelle
Comme, j'étais pratiquement sur la même réponse. Je ne pouvais que la
soutenir.

A mon avis il ne doit pas y avoir de différence entre un xla et un xls avec
la propriété isAddin à True.


En effet.
Selon les modalités que j'indiquais la différence était surtout sur le
fait qu'il ne
figure pas directement dans la liste des macros complémentaires.

@+

--
lSteph

1 2