Probleme UserForm et IF

Bonjour,

Je suis entrain de faire un UserForm donc la 2nd valeur saisie dépende de la 1ere.

j'arrive a saisir les données (a faire un test si c'est numerique ou non) mais le probleme survient dans le if pour que la 2nd valeur soit inférieure.

Je m'explique :

A=7 et B=6 => ok

A=7 et B=8 => valeur sup, recommencez (ok)

A=7 et B=7 => valeur egale, recommencez (ok)

A=78 et B=8 => valeur sup (PROBLEM)

A=210 et B = 1 => valeur sup (PROBLEM)

C'est comme si le test ne prennait en compte que chiffre par chiffre et non tout le nombre d'un coup :/

Merci d'avance,

Capazar

Private Sub TextBox_brut_D_Change()
    If IsNumeric(TextBox_brut_D.Text) = False Then 'SI valeur numérique ...
        Label23.Visible = True 'Label visible
        TextBox_brut_D.Text = ""
        Else
        Label23.Visible = False 'Label masqué
    End If
End Sub

Private Sub TextBox_final_D_Change()
    If IsNumeric(TextBox_final_D.Text) = False Then
        Label21.Visible = True
        TextBox_final_D.Text = ""
        Else
        Label21.Visible = False
    End If
    If (TextBox_final_D.Text) > (TextBox_brut_D.Text) Then 'SI diametre final > diametre inital ... (PROBLEM)
        MsgBox "Le diamètre final est supérieur à celui du brut." & Chr(13) & "Recommencez !", vbOKOnly + vbExclamation, "Erreur !"
        TextBox_final_D.Text = ""
    End If
    If (TextBox_brut_D.Text) = (TextBox_final_D.Text) Then   'SI diametre final = diametre inital ...
        MsgBox "Le diamètre final est égal à celui du brut." & Chr(13) & "Recommencez !", vbOKOnly + vbExclamation, "Erreur !"
        TextBox_final_D.Text = ""
    End If
End Sub

Bonjour,

avec tes tests il semble que tu traites des chaines de caractères et donc tes > et < respectent l'ordre alphabétique..

tu peu par exemple utiliser CNUM pour tester des valeurs numériques :

 If CNUM(TextBox_final_D.Text) > CNUM(TextBox_brut_D.Text)

Bonjour,

Oui effectivement :/ Cependant après modification et lors de l’exécution, j'obtiens une erreur de compilation : Sub ou Function non définie (par rapport au CNUM rajouté)

C'est bon, j'ai trouvé une solution

If Val(TextBox_final_D.Text) > Val(TextBox_brut_D.Text)

Merci pour m'avoir éclairer sur le problème

Rechercher des sujets similaires à "probleme userform"