Se connecter / S'enregistrer
Votre question

[VBA] MsgBox à la fermeture d'un doc excel

Tags :
  • Microsoft Excel
  • Programmation
Dernière réponse : dans Programmation
1 Décembre 2010 16:59:44

Bonsoir,

Je suis bloqué. Je veux mettre un MsgBox dans mon appli lorsqu'un fichier Excel ce ferme, mais je ne veux pas que la macro soit dans mon fichier excel mais dans le fichier de mon appli.

  1. 'mettre les fenetres en arrière plan pour tester le document
  2. Fichiers.Hide
  3. Service.Hide
  4.  
  5. If ActiveWorkbook.Close Then
  6. MsgBox ("...")
  7. Else
  8.  
  9. End If


Il me met un erreur "Fonction ou varaible attendue." Je ne vois pas pourquoi.

Merci d'avance.

Autres pages sur : vba msgbox fermeture doc excel

2 Décembre 2010 09:00:23

Ok je ne peux pas mettre un "Close" dans un "If ... Then" mais comment je peux faire? pour savoir que l'utilisateur ferme le classeur?

m
0
l
Contenus similaires
a c 232 L Programmation
2 Décembre 2010 10:59:03

La méthode Close permet de fermer le classeur, elle ne permet pas de savoir quand l'utilisateur ferme le classeur.

Pour exécuter quelque chose à la fermeture du classeur, il faut utiliser l'évènement BeforeClose.
Tu as des explications (en anglais, mais avec des schémas donc ça se comprend bien) ici : http://forums.speedguide.net/showpost.php?s=c857e2be713...
m
0
l
15 Décembre 2010 09:09:42

Je n'ai pas trouvé comment l'utiliser vers un autre classeur, je ne sais pas si c'est possible? D'autre solution? je suis vraiment bloqué la.
m
0
l
a c 232 L Programmation
15 Décembre 2010 09:45:39

Ah oui, j'avais pas lu que tu voulais faire ça dans un autre classeur.
Le soucis c'est que je suis pas trop sûr que ce soit possible... :/ 
m
0
l
15 Décembre 2010 11:29:17

Arffff mince, je ne sais pas ce que je pourrai faire d'équivalent, mais j'en ai besoin. C'est possible de programmer un Msgbox au bout d'une minute par exemple?
m
0
l
a c 232 L Programmation
15 Décembre 2010 11:33:50

Hmm, regarde du côté d'Application.OnTime qui te permet d'exécuter une macro à une heure donnée, en calculant la date actuelle + 1 minute, tu dois pouvoir faire ça.
m
0
l
15 Décembre 2010 12:03:05

Merci, c'est ce que j'ai fais.
  1. Dim dtime As Date
  2. dtime = Now + TimeValue("00:00:10")
  3. Application.OnTime dtime, "TestMsgbox"
m
0
l
24 Décembre 2010 13:50:31

Je relance mon post. J'aimerai pouvoir afficher un Msgbox lorsqu'un classeur Excel se ferme. Ce Msgbox devra être dans une macro d'un seul classeur, et non dans chaque classeur.

Quelqu'un aurai une idée, je suis bloqué la dessus.
m
0
l
Tom's guide dans le monde
  • Allemagne
  • Italie
  • Irlande
  • Royaume Uni
  • Etats Unis
Suivre Tom's Guide
Inscrivez-vous à la Newsletter
  • ajouter à twitter
  • ajouter à facebook
  • ajouter un flux RSS