Unité de mesure "Kg" - USERFORM VBA

Bonjour,

Je vous explique mon problème.
J'ai un USERFORM comprenant plusieurs TEXTBOX qui se remplissent suivant différentes conditions.

Suivant la valeur affiché dans la TEXTBOX, celle ci se colorera de différentes façons (Noire si =0, vert si >0 et rouge si <0).

Private Sub TextBox26_Change()
Select Case Left(TextBox26.Value, Len(TextBox26.Value) - 1)
        Case -1000000 To -0.0001
            TextBox26.BackColor = vbRed
        Case 0.0001 To 1000000
            TextBox26.BackColor = RGB(128, 159, 214)
        Case Is = 0
            TextBox26.BackColor = vbGrey

    End Select
End Sub

Tout fonctionne bien tant que la TEXTBOX contient un chiffre classique ou un %.

TextBox24.Value = Format(Sheets("Calculs").Range("N52"), "0.0")
TextBox37.Value = Format(Sheets("Calculs").Range("C55"), "##0%")

Mais cela ne marche pas si j'utilise l'unité de mesure "Kg"

TextBox30.Value = Format(Sheets("Calculs").Range("H54"), "# ### ##0Kg")

J'ai l'impression que la valeur n'est pas reconnue comme un chiffre et la TEXTBOX ne se colore pas.

Je souhaiterai que la coloration se produise en gardant le l'affichage du "Kg".

Je vous remercie par avance pour votre aide.

Bonjour Olivier TP,

Pas testé, mais ça devrait marcher :

Private Sub TextBox26_Change()
Select Case Val(Left(TextBox26.Value, Len(TextBox26.Value) - 1))
        Case -1000000 To -0.0001
            TextBox26.BackColor = vbRed
        Case 0.0001 To 1000000
            TextBox26.BackColor = RGB(128, 159, 214)
        Case Is = 0
            TextBox26.BackColor = vbGrey

    End Select
End Sub

En effet le val() a résolu mon problème ^^
Merci beaucoup à toi et bon weekend.

Super !

Merci, bon we à toi aussi !

Baboutz

Rechercher des sujets similaires à "unite mesure userform vba"