Bonjour,
Contexte du problème:
Je travaille actuellement sur ACCESS 2016 pour créer un formulaire de saisi des expertises des constructions d'un quartier.
Dans ce formulaire que j'ai fait grâce à l'assistance de ce merveilleux site, je saisi la recommandation de l'expertise via le contrôle RECOMMANDATION moyennant une liste de choix qui permet de saisir l'une des 5 recommandations suivantes :
1.DEMOLITION TOTALE;
2.DEMOLITION PARTIELLE ET CONFORTEMENT;
3.CONFORTEMENT;
4.REFECTION;
5.BON ETAT.
Ci-dessous capture du formulaire :
Ma question est :
Vu que les choix 3,4 et 5 ne sont concernés par la démolition d'aucun étage, je voudrais que si on fait l'un de ces 3 choix dans le le contrôle RECOMMANDATION alors le contrôle NIVEAUX _A_DEMOLIR doit se désactiver automatiquement, (sous entendu il reste actif si le choix est 1 ou 2).
ci-joint le code actuel du formulaire:
Codes Formulaire.txt
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 Private Sub Form_Current() Me.ELEVATION.Requery Me.NIVEAUX_A_DEMOLIR.Requery End Sub
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 Private Sub ELEVATION_Change() Me.NIVEAUX_A_DEMOLIR.Requery End Sub
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8 Private Sub NIVEAUX_A_DEMOLIR_Dirty(Cancel As Integer) If Me.RECOMMANDATION.Value = "DEMOLITION PARTIELLE ET CONFORTEMENT" Then Me.SOUS_CLASSE = "C2." & Me.NIVEAUX_A_DEMOLIR.ItemsSelected.Count Me.SOUS_CLASSE.Requery Else Me.RECOMMANDATION.Value = "" End If End Sub
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29 Private Sub RECOMMANDATION_AfterUpdate() If Me.RECOMMANDATION.Value = "DEMOLITION TOTALE" Then Me.CLASSE = "C1" Else If Me.RECOMMANDATION.Value = "DEMOLITION PARTIELLE ET CONFORTEMENT" Then Me.CLASSE = "C2" Else If Me.RECOMMANDATION.Value = "CONFORTEMENT" Then Me.CLASSE = "C3" Else If Me.RECOMMANDATION.Value = "REFECTION" Then Me.CLASSE = "C4" Else Me.CLASSE = "C5" End If End If End If End If If Me.RECOMMANDATION.Value = "DEMOLITION TOTALE" Then Me.NIVEAUX_A_DEMOLIR.SetFocus Me.NIVEAUX_A_DEMOLIR.Dropdown For iCount = 0 To Me.NIVEAUX_A_DEMOLIR.ListCount Me.NIVEAUX_A_DEMOLIR.Selected(iCount) = True Next iCount Else Call clearListBox End If End SubJ'ai beau essayer avec
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9 Private Sub clearListBox() Dim iCount As Integer Me.NIVEAUX_A_DEMOLIR.SetFocus Me.NIVEAUX_A_DEMOLIR.Dropdown For iCount = 0 To Me.NIVEAUX_A_DEMOLIR.ListCount Me.NIVEAUX_A_DEMOLIR.Selected(iCount) = False Next iCount SendKeys ("{Enter}") End Sub
(sur l'évenement : RECOMMANDATION_AfterUpdate)
mais ça bloque avec les codes déjà existants sur ce même événement.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 If Me.RECOMMANDATION.Value <> ("DEMOLITION TOTALE" Or "DEMOLITION PARTIELLE ET CONFORTEMENT") Then Me.NIVEAUX_A_DEMOLIR.Enabled = False
Merci de m'aider.
Partager