Bonjour à tous.
J'ai encore besoin d'aide afin de comprendre le résultat de mon code.
J'ai textbox 3 et 4 qui demandent des nombres. Textbox4 doit être plus grand que textbox3.
Le résultat de la soustraction de textbox3 - textbox4 s'affiche dans label16
Si le nombre de textbox4 est supérieur à textbox3, j'ai un msgbox afin de corriger la situation.
Voici mes codes:
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 Private Sub TextBox4_AfterUpdate() 'si il n'y a rien dans les textbox on ne calcule pas If Me.TextBox3.Value = "" Or Me.TextBox4.Value = "" Then Exit Sub Me.Label16.Caption = Me.TextBox3.Value - Me.TextBox4.Value If Me.TextBox3.Value = "" Or Me.TextBox4.Value = "" Then Exit Sub Me.Label18.Caption = Round(Me.TextBox4.Value / Me.TextBox3.Value * 100, 2) If Label16 < 0 Then MsgBox "Le nombre de kilomètres pour des fins d'affaires est suppérieur au total des kilomètres parcourus", vbOKOnly TextBox4 = "" TextBox3.SetFocus Exit Sub End If End SubSelon moi, dans le premier code je devrais revenir au textbox3 si label16 < 0 mais non, je passe au textbox suivant.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12 Private Sub TextBox4_KeyPress(ByVal KeyAscii As MSForms.ReturnInteger) Select Case KeyAscii Case 48 To 57, 8 Case Else KeyAscii = 0 End Select If Len(TextBox4.Text) >= 6 Then KeyAscii = 0 End Sub
Quel est mon erreur ?
Merci à l'avance
Partager