Macro excel condition pour sauvegarder
babounet1989
Messages postés
1
Statut
Membre
-
f894009 Messages postés 17417 Date d'inscription Statut Membre Dernière intervention -
f894009 Messages postés 17417 Date d'inscription Statut Membre Dernière intervention -
Bonjour à tous,
je suis complètement débutant en VB et je souhaiterais simplement permettre l'enregistrement d'un fichier excel lorsque la case H4 = OK.
Après quelques recherches sur différents forum, j'ai codé ceci mais ça ne fonctionne pas.
Private Sub Workbook_BeforeSave(ByVal SaveAsUI _As Boolean, Cancel As Boolean)
If Range("H4") = "OK" Then
Cancel = True
End If
End Sub
Quelqu'un pourrait-il m'aider svp? :)
Merci d'avance
je suis complètement débutant en VB et je souhaiterais simplement permettre l'enregistrement d'un fichier excel lorsque la case H4 = OK.
Après quelques recherches sur différents forum, j'ai codé ceci mais ça ne fonctionne pas.
Private Sub Workbook_BeforeSave(ByVal SaveAsUI _As Boolean, Cancel As Boolean)
If Range("H4") = "OK" Then
Cancel = True
End If
End Sub
Quelqu'un pourrait-il m'aider svp? :)
Merci d'avance
2 réponses
-
bonjour,
le code en lui même fonctionne (du moins pour Excel 2003)
En précisant simplement la feuille de la cellule H4, ça devrait marcher:
If Sheets("nomdelafeuille").Range("H4") = "OK" Then ..
Bonne suite
edit: heu... en fait j'ai repris sans réfléchir; là on empêche de sauvegarder quand c'est OK
il faudrait plutôtIf Sheets("nomdelafeuille").Range("H4") <> "OK" Then .. -
Bonjour,
'test sur fermeture classeur Private Sub Workbook_BeforeClose(Cancel As Boolean) If Worksheets("feuil1").Range("H4") = "OK" Then Workbooks(ActiveWorkbook.Name).Close savechanges:=True Else Workbooks(ActiveWorkbook.Name).Close savechanges:=False End If End Sub 'test sur enregistrement Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean) Application.DisplayAlerts = False If Worksheets("feuil1").Range("H4") = "OK" Then ActiveWorkbook.Save Else Cancel = True End If Application.DisplayAlerts = True End Sub
Bonne suite