Macro s'exécutant suite à l'action "Enregistrer"

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

Llaurent

XLDnaute Nouveau
Bonjour à toutes et à tous,

Je souhaite qu'une macro s'exécute lorsque l'utilisateur souhaite enregistrer son fichier Excel (la macro servira à vérifier si les données saisies par l'utilisateur sont valides, si elles le sont le fichier est enregistré sinon le fichier n'est pas enregistré et les erreurs s'affichent à l'écran). L'écriture du code permettant de vérifier les données ne me pose pas de problème, mais je ne sais pas comment faire pour que la macro s'exécute au moment où k'utikisateur essaye d'enregistrer son fichier. Il doit surement y avoir un nom spécifique à donner que je ne connais pas.
Je sais que c'est possible car je l'ai fait il y a trois ans mais je n'ai plus ce fichier.

Merci pour votre aide.
 
Re : Macro s'exécutant suite à l'action "Enregistrer"

Bonjour Laurent

Dans le module de code de "ThisWorkbook", tu mets ton code dans l'évènement "BeforeSave" comme ci dessous :

Code:
Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean)
'ton code
'ton code

End Sub

Bonne fin de journée.
@+
 
Re : Macro s'exécutant suite à l'action "Enregistrer"

Re Laurent

tu fais ALT F11, tu arrives dans l'éditeur VBA, tu double clique dans le projet portant le nom du classeur, puis double clique dans "microsoft Excel objets", puis double clique dans "ThisWorkbook"

@+
 
Re : Macro s'exécutant suite à l'action "Enregistrer"

Salut,

Encore merci pour ton aide, j'ai une dernière question (enfin j'espère lol), lorsque l'utilisateur voudra enregistrer, la macro s'exécutera et vérifiera si il y a des erreurs de saisie, si il n'y a pas d'erreur le fichier s'enregistre sinon le fichier ne doit pas s'enregistrer.
Une partie du code ressemblerait à ca:

Si NbErreur = 0 Alors
le fichier s'enregistre
Sinon
le fichier ne s'enregistre pas
Fin Si

Ce qui donne:

If NbErreur = 0 Then
ActiveWorkbook.Save
Else
??????????????????
End If

Merci.
 
Re : Macro s'exécutant suite à l'action "Enregistrer"

Bonjour Laurent

Toujours dans l'évènement "BeforeSave", si tu passes l'argument "cancel" à "True", l'action est annulée. J'ai rajouté la ligne dans le classeur.

Bon dimanche.
@+
 

Pièces jointes

Re : Macro s'exécutant suite à l'action "Enregistrer"

Ok merci, pour tester j'ai remplacé la valeur "x" par "a" dans la cellule A1, normalement le fichier ne devrait pas s'enregistrer or il s'enregistre. Ne manque t'il pas quelque chose dans le code que tu m'as transmis?

Encore merci pour ton aide
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Réponses
5
Affichages
743
Retour