Empêcher la sauvegarde

  • Initiateur de la discussion Initiateur de la discussion Nadège
  • 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 !

N

Nadège

Guest
Je souhaiterai, en vba, empêcher la sauvegarde d'un fichier (bon de commande) si certains critères ne sont pas remplis (en l'occurence l'absence du n° de devis qui doit comporter 7 caractères).

J'ai donc créé une procédure Workbook_BeforeSave qui teste si les conditions sont remplies ou non.
La procédure de test fonctionne parfaitement.
Le message s'affiche bien si le n° de devis n'est pas conforme.
Le hic ? la boîte de dialogue "Enregistrer" ne se referme pas pour autant.

Est-il possible de brider cette commande et comment ?

D'avance merci de votre aide.

------

reponse = Range("C20").Value
Select Case reponse
Case Is <> "Non"
Select Case Len(Range("C22"))
Case Is < 7
MsgBox "N° de devis invalide !" & Chr(10) & "Merci de vérifier auprès de Dhane, poste 7351", vbCritical
Exit Sub
End Select
End Select
 
Inutile de me répondre : je viens a priori de trouver la solution.

Pour ceux que cela intéresse : il suffit d'intercaler la ligne Cancel=true
après le test...

----

reponse = Range("C20").Value
Select Case reponse
Case Is <> "Non"
Select Case Len(Range("C22"))
Case Is < 7
MsgBox "N° de devis invalide !" & Chr(10) & "Merci de vérifier auprès de Dhane, poste 7351", vbCritical
Cancel = True
Exit Sub
End Select
End Select
 
- 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
Assurez vous de marquer un message comme solution pour une meilleure transparence.
Retour