XL 2010 Forcer l'éxécution d'une macro avant tout enregistrement

  • Initiateur de la discussion Initiateur de la discussion jojodu42
  • Date de début Date de début

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 !

jojodu42

XLDnaute Nouveau
Bonjour,
J'ai besoin pour un fichier qui sera diffusé à des clients de forcer l’exécution d'une macro avant enregistrement du fichier.
Je m'explique:
- J'ai créé un fichier de dimensionnement d'un système incendie.
Mes clients vont le remplir et me le renvoyer.
Le rôle d'une des macros est de nommer le fichier d'une certaine façon suivant les valeurs de certaines cellules. Cette partie est fonctionnelle.
Ce que je recherche est d’exécuter cette macro avant chaque enregistrement.

Cordialement,
Jojodu42
#restezchezvous #cestbientotfini
 
Bonjour Fanfan38
Toujours le même problème : j'ai écrit ma réponse alors qu'il n'y en avait aucune autre.
Plus souvent il arrive qu'un message me demande si je veux voir ce qui a été écrit alors qu'il n'y avait rien quand j'ai commencé à écrire. C'est ch...... !
Là, chance, on dit la même chose
 
Bonjour
Dans Thisworkbook
Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean)
'action
End Sub

A+ François
Bonjour,
Dans les évènements Workbook :

VB:
Option Explicit

Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean)
    Mamacro
End Sub

Bonjour à tous les deux,
Je viens de tester les lignes de code que vous m'avez indiqué. Mais lorsque je clique sur enregistrer ça ne fonctionne pas. Elle ne s'exécute pas lorsque j'enregistre.
Pourriez vous m'aider ?
 
Rien ne s'execute car Pounet95 a mis mamacro et moi j'ai mis un commentaire mais ni l'un ni l'autre avons mis une commande...
si en dessous de 'action tu mets
msgbox("Bonjour")
tu auras un message mais sauvegarder d'une certaine façon suivant les valeurs d'une certaine cellule ça on sait pas faire... on est pas devain
A+ François
 
Rien ne s'execute car Pounet95 a mis mamacro et moi j'ai mis un commentaire mais ni l'un ni l'autre avons mis une commande...
si en dessous de 'action tu mets
msgbox("Bonjour")
tu auras un message mais sauvegarder d'une certaine façon suivant les valeurs d'une certaine cellule ça on sait pas faire... on est pas devain
A+ François

Désolé, je me suis mal exprimé alors. Je m'en excuse.
En fait, j'ai deux macros. Une qui permet de dire le nom de fichier est composé de telle cellule et telle cellule:

Sub enregistrer_classeur()
fichier = "E:\Professionnel\" & Range("Synthèse!B3") & " - " & Range("Synthèse!B7") & ".xls"
ActiveWorkbook.SaveAs Filename:=fichier
End Sub


Et j'en ai créé une autre qui a pour mission d'exécuter la macro "nom_fichier" lors de l'enregistrement. dans celle-là, j'ai mis les lignes de codes identiques à ce que vous m'avez mis en remplaçant le action ou mamacro par nom_fichier.

Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean)
Nom_fichier
End Sub


Je ne sais pas ou la macro plante pour ne pas s'exécuter lors de l'enregistrement. En mode manuel, la macro enregistrer le fichier fonctionne.

Merci
 
remplace
fichier = "E:\Professionnel\" & Range("Synthèse!B3") & " - " & Range("Synthèse!B7") & ".xls"
par
fichier = "E:\Professionnel\" & sheets("Synthèse").range("B3") & " - " & sheets("Synthèse").range("B7") & ".xls"
je pense que l'erreur est là

A+ François
 
remplace
fichier = "E:\Professionnel\" & Range("Synthèse!B3") & " - " & Range("Synthèse!B7") & ".xls"
par
fichier = "E:\Professionnel\" & sheets("Synthèse").range("B3") & " - " & sheets("Synthèse").range("B7") & ".xls"
je pense que l'erreur est là

A+ François
Bonjour, Les deux versions fonctionnent. LA partie qui ne focntionne pas dans mon codage c'est bouton enregistrer (la fameuse disquette) exécution de la macro et enregistrement
 
Ta macro enregistrer classeur est lancée quand?
Je pense qu'il faut l'ajouter dans la macro comme ci dessous...
mais à force de jouer au devinette.....
VB:
Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean)
Nom_fichier
enregistrer_classeur
End Sub
A+ François
 
- 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

Retour