Bonjour,
J'ai sur mon fichier des contrôles en BeforeClose
Différentes alertes qui s'affichent suivant conditions.
Chacune marche si elle est seule dans le BeforeClose
Problème , je n'arrive à faire enchainer les conditions pour déclencher chaque msgbox :
- pour les 2 premières : si oui je retourne en feuille1 / si non je passe à la condition suivante
- pour la 3ème, si condition = oui message info, clique ok et ensuite affichage usf / si condition = non ignore et affichage usf
- enfin si aucunes des 3 premières conditions réunies, si condition dernière condition = oui affichage usf / si condition = non fermeture du fichier
- si aucune des 4 conditions, fermeture du fichier
Il y a surement des trucs mal placés ou absent, mais je ne vois pas quoi.
Ci-dessous mon code que j'ai aéré pour être plus lisible
------------------------------------------------------------------------------------------------------------------------------
Private Sub Workbook_BeforeClose(Cancel As Boolean)
'1ere condition
With Sheets("FEUILLE1")
If Range("M10").Value Like "*MAJUSCULES*" And .Range("S148") < 800 Then
If MsgBox("mon texte" & Chr(13) & Chr(10) & "ma question ?", vbQuestion + vbYesNo, "- - - ATTENTION - - -") = vbYes Then
Cancel = True
Exit Sub
End If
End If
End With
'2ème condition
With Sheets("FEUILLE1")
If Range("M10").Value Like "*minuscules*" And .Range("S148") < 800 Then
If MsgBox("mon texte" & Chr(13) & Chr(10) & "ma question ?", vbQuestion + vbYesNo, "- - - ATTENTION - - -") = vbYes Then
Cancel = True
Exit Sub
End If
End If
End With
'3ème condition
If Sheets("FEUILLE1").Range("M10") = "blablabla" Or Sheets("FEUILLE1").Range("G7") = "" Then
If Sheets("feuille2").Range("I18") > 0 Or Sheets("feuille2").Range("I20") > 0 Then
MsgBox "mon texte", vbInformation, "- - - ATTENTION - - -"
End If
Else
'4ème condition
If Sheets("FEUILLE1").Range("G10").Value Like "@ blabla @" Then
UserForm3.Show
End If
End If
End Sub
--------------------------------------------------------------------------------------------------------------
Merci d'avance pour votre aide.
Bonne soirée.