Enregistrement conditionnel

M

Marc

Guest
Bonjours à tous,

Quelqu'un saurait-il comment empêcher la sauvegarde d'un document incomplet ?
exemple : l'utilisateur doit remplir 3 cases A1, A2 & A3. Je ne voudrais pas qu'il puisse enregistrer le document tant que les 3 cases ne sont pas remplies. Eventuellement, un msgbox peut le prévenir que son enregistrement est incomplet.

Merci d'avance !!!
 

Darnel

XLDnaute Impliqué
bonjour
je propose une macro 'auto_close' du style:

Sub auto_close()

If IsEmpty(Range('A1')) Then
MsgBox 'compléter cellule A1'
Exit Sub
End If
If IsEmpty(Range('A2')) Then
MsgBox 'compléter cellule A2'
Exit Sub
End If
If IsEmpty(Range('A3')) Then
MsgBox 'compléter cellule A3'
Exit Sub
End If

ActiveWorkbook.Save

End Sub

vérifie que ca marche, mais ca devrait etre bon

bonne journée
 
M

Marc

Guest
Je te remercie beaucoup d'avoir répondu aussi vite. J'ai enregistré ta macro.

Elle répond au besoin si on passe par cette macro pour enregistrer.
Mais elle n'empêche pas d'enregistrer en appuyant directement par 'Fichier > Enregister' .
Comment rendre cette opération impossible et n'offrir d'autre moyen à l'utilisateur que de compléter les 3 cases pour pouvoir enregistrer ?

Excuse moi de te solliciter de nouveau.

Merci d'avance.
 

Darnel

XLDnaute Impliqué
Rebonjour

Là je doit t'avouer que mes faibles compétences en vb atteignent déjà leurs limites ( :eek: ) et qu'il va falloire attendre une autre réponse que la mienne pour t'aider.

je guette la réponse qui m'interesse également

desolé
 

Marc_du_78

XLDnaute Accro
Bonjour Marc, Darnel, le Forum,

Pour interdire l'enregistrement et/ou l'impression si une donné est manquante tu peux aussi essayer ceci

Private Sub Workbook_BeforePrint(Cancel As Boolean)
Dim Verrou As Boolean
Dim Cell As Range
For Each Cell In Range('Toto')
If Cell = '' Then Verrou = True
Next
If Verrou = True Then
MsgBox 'Il manque des données'
End If
Cancel = Verrou
End Sub

Bonne soirée.
 
M

Marc

Guest
bonjours,
Je te remerci, mais je ne comprends pas comment l'appliquer. J'ai ouvert une feuille, j'y ai mis la macro, et j'ai pu l'enregister sans aucun message, que la feuille soit pleine ou vide.
Peux tu m'expliquer comment ça marche.
Merci d'avance.

Marc
 

Discussions similaires

Réponses
1
Affichages
993

Statistiques des forums

Discussions
312 472
Messages
2 088 712
Membres
103 930
dernier inscrit
Jibo