Comparer valeurs Texbox a une valeurs en %

  • Initiateur de la discussion Initiateur de la discussion bibbip35
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

bibbip35

XLDnaute Occasionnel
Bonjour a tous

Jme permets de vous exposer mon pb...

Je renseigne aujourd'hui 1 formulaire vba ou il y a 1 texbox dont la valeurs est en %
Je souhaiterais qu'il ya a 1 msg bos si la valeurs > 100%

J'ai crée le code ci-dessous:

If TextBox11.Text > "100%" Or TextBox11.Text < "0%" Then
MsgBox "Attention, le % de la production affecter sur Janvier" & Chr(13) & "est incohérent : Il doit se situer entre 0% et 100% ", vbCritical, "Données Incohérantes"
Exit Sub
End If
If TextBox11.Text < "100%" Then
Select Case MsgBox("Attention, le % de la production sur Janvier est inférieur a 100% " & Chr(13) & "Etes-vous certain de votre choix ? " & Chr(13) & "Si oui , la production doit être affectée également sur une autre ligne ", vbOKCancel + vbQuestion, "Données Incohérantes")
Case vbOK
'procédure si click sur Ok
Case vbCancel
Exit Sub
End Select
End If


Le problème est que quand ca ne compare pas correctement...sauf qd je mets 10%??? Ca fonctionne?

Il ya t-il qq de chose de particulier qd on utilise le vba et les %?

Merci à tous

Bibbip35
 
Re : Comparer valeurs Texbox a une valeurs en %

Merci pour l'intrêt portée au fil de dsicussion

Vosu trouverez ci- le fichier exemple du pb...
Pour faire simple, qd je tape 1 valeurs à 100% il n'y a pas de message

Qd je tape 1 valeurs < 100%
("Attention, le % de la production sur Février est inférieur a 100% " & Chr(13) & "Etes-vous certain de votre choix ? " & Chr(13) & "Si oui , la production doit être affectée également sur une autre ligne ",


Qd je tape 1 valeurs >100%
MsgBox "Attention, le % de la production affecter " & Chr(13) & "est incohérent : Il doit se situer entre 0% et 100% ", vbCritical, "Données Incohérantes"
Avec EXIT SUB pour bloquer la saisie

Merci d'avance

Bibbip35
 

Pièces jointes

Re : Comparer valeurs Texbox a une valeurs en %

Bonsoir.

La fonction Split pour supprimer le caractère "%".

La fonction Replace au cas où il y aurait un séparateur décimal dans la valeur.

Code:
splitTexbox11 = Split(TextBox11.Value, "%")
ValTextBox11 = Val(Replace(splitTexbox11(0), ",", "."))
   'La fonction Val donne une valeur numérique qu'il faut comparer ensuite avec des valeurs numériques
If ValTextBox11 > 100 Or ValTextBox11 < 0 Then


Cordialement

Docmarti
 
Re : Comparer valeurs Texbox a une valeurs en %

bibbip35

Code:
If TextBox11 <> "" And InStr(TextBox11, "%") = 0 Then

'Tu peux ajouter le caractère % oublié par l'utilisateur
 TextBox11 = TextBox11 & "%"

 'Ou lui signaler l'oubli dans un message
 MsgBox "On n'oublie pas le caractère % s.v.p."
 
End If


Cordialement

Docmarti
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

  • Question Question
Microsoft 365 Export données
Réponses
4
Affichages
657
Réponses
3
Affichages
589
Retour