Salut,
Tu peux essayer ça.
Extrait de l'aide d'Excel 2000 :
WorkbookBeforeSave, événement
Cet événement se produit avant l'enregistrement de tout classeur ouvert.
Syntaxe
Private Sub object_WorkbookBeforeSave(ByVal Wb As Workbook, ByVal SaveAsUi As Boolean, ByVal Cancel As Boolean)
object Objet de type Application déclaré avec des événements dans un module de classe. Pour plus d'informations, consultez Utilisation d'événements avec l'objet Application.
Wb Le classeur.
SaveAsUi Cet argument a la valeur True si la boîte de dialogue Enregistrer sous doit être affichée.
Cancel Cet argument a la valeur False lorsque l'événement se produit. Si la procédure de l'événement lui affecte la valeur True, le classeur n'est pas enregistré à la fin de la procédure.
Si j'ai bien compris, si les conditions pour sauvegarder ne sont pas remplies, dans ton code, tu dois mettres Cancel=True. J'ai pas testé.
Tiens-moi au courrant.