Bonsoir à tous,
je viens très régulièrement sur le forum pour chercher des infos lorsque je suis bloqué sur VBA et jusqu'alors je n'avais encore rien posté.
J'ai un problème complètement nul que je n'arrive ni à comprendre ni à résoudre, je vous explique :
j'ai la valeur 0,15 dans la cellule A1. C'est une valeur de référence.
J'ai un userform avec une textbox et un label. Je récupère la valeur de la cellule a1 dans une variable nommée valmax et je lui ajoute 0.02 pour arriver donc à 0.17. je compare ensuite la valeur entrée dans la textbox à valmax et si la valeur est strictement supérieure à valmax alors le label est visible, sinon il est masqué.
Cependant, lorsque j'écris 0.17 dans la textbox, le label apparait alors qu'il ne devrait pas car ma condition est strictement supérieure.
Le plus incomprehensible est que mon code fonctionne si je mets 0.16 dans la cellule a1 et que je relance la procédure avec donc une valmax qui passe a 0.18 (et la mon label disparait lorsque j'écris 0.18 dans la textbox).
Je vous joints le fichier car je n'y comprends strictement rien.
JE REMERCIE D'AVANCE celui ou celle qui arrivera à solutionner ce problème (uniquement en modifiant le code, pas en rajouter un 0.17 à côté etc... j'ai mis que le point bloquant dans mon fichier mais il est en réalité bien plus gros et complexe donc je ne peux pas me permettre de bouger quoi que ce soit mis à part de résoudre le problème au niveau du code).
MERCI A TOUS !
voila le code :
''''''''''''
Private Sub TextBox6_KeyPress(ByVal KeyAscii As MSForms.ReturnInteger)
If KeyAscii = 46 Then
KeyAscii = 44
End If
End Sub
'''''''''''''''''
Private Sub TextBox6_Change()
Dim valmin As Variant
Dim valmax As Variant
valmin = Sheets("feuil1").Range("b1").Value * 1 - 0.02
valmax = Sheets("feuil1").Range("b1").Value * 1 + 0.02
If IsNumeric(TextBox6.Value) = False Then
Label106.Visible = True
ElseIf CDbl(TextBox6.Text) < valmin Then
Label106.Visible = True
ElseIf CDbl(TextBox6.Text) > valmax Then
Label106.Visible = True
ElseIf TextBox6.Value = "" Then
Label106.Visible = True
Else
Label106.Visible = False
End If
End Sub