Erreur sur test en TEXTBOX

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 !

herve62

XLDnaute Barbatruc
Bonsoir au forum du WE !

Juste une petite question . J'ai terminé une appli , tout va bien ... mais pour perfectionner
j'aimerais traiter les erreurs. Je joins l'appli car je le prêche tout le temps !!

Le Problème : dans le code "textbox1" , je verifie que le Nbre entré n'est pas sup. au Nbre de la liste de parieurs , dans l'exemple --> 7
Je teste , et entre 4, donc normal ... MAIS NON le message s'affiche quand même signalant que j'ai entré un nombre sup au Nbre de parieurs ?????
En mode "pas à pas" :
If TextBox1.Value > derlig - 4 Then ...
Textbox1 est bien = à 4 et derlig =11 donc -4 = 7 ,et le code entre dand le IF ?????
4 N'EST PAS SUPERIEUR A 7 ????
C'est peut-être BALLOT !! , mais JE ne comprends plus rien ????

Ensuite , j'aimerais que si Combobox2 n'est pas vide et que Combobox1 l'est , un message d'erreur s'affiche , puis donne le focus à Combobox1 car c'est une possibilité de comparer entre 2 parieurs

Merci de votre aide
Hervé
 

Pièces jointes

Re : Erreur sur test en TEXTBOX

Bonsoir
Bonsoir Justine

Une première réponse
Dans un textbox les données sont du type "STRING"

Il faut donc écrire

If Val(TextBox1.Value) > derlig - 4 Then

Puis pour la deuxième réponse
macro à modifier
Code:
Private Sub CommandButton1_Click()
'Ensuite , j'aimerais que si Combobox2 n'est pas vide et
'que Combobox1 l'est , un message d'erreur s'affiche ,
'puis donne le focus à Combobox1 car c'est une possibilité de comparer entre 2 parieurs
 If ComboBox2.Value <> "" And ComboBox1 = "" Then
 Call MsgBox("Si vous avez un deuxième joueur, il en existe 1 avant." _
             & vbCrLf & "Mais quel est son nom ?" _
             & vbCrLf & "" _
             & vbCrLf & "" _
             , vbExclamation, "Erreur de saisie")
 
    ComboBox1.SetFocus
    Exit Sub
End If
..........................................


JP
 
Dernière édition:
Re : Erreur sur test en TEXTBOX

bonsoir tout le monde, hervé62
j'ai un peu modifié ton code tout en respectant ton travail

Private Sub TextBox1_AfterUpdate()
Dim nb As Integer <---------------------------- j'ai rajouté cette variable
If Not IsNumeric(TextBox1) Then
MsgBox "Entrer un chiffre ..!"
TextBox1 = ""
TextBox1.SetFocus
Exit Sub
End If

With Worksheets("Feuil1")
derlig = .Range("B100").End(xlUp).Row
nb = TextBox1.Value <---------------
If nb > derlig - 4 Then
MsgBox "Chiffre supérieur au nombre de parieurs !" & Chr(10) & Chr(13) & "maxi = " & derlig - 4
TextBox1 = ""
TextBox1.SetFocus
Exit Sub
End If
End With

ComboBox1.Enabled = False
ComboBox2.Enabled = False
CommandButton1.SetFocus
End Sub
 
Re : Erreur sur test en TEXTBOX

Re Bonsoir , Jp et Justine ( que je ne connaisait pas encore , moi c'est Hervé )
Merci à vous ... qu'est ce que l'on apprend tous les jours !!! même après + de 2 ans
Je teste tout cela demain .. car il y a le RUGBY ce soir
J'aurais peut-être encore qq soucis de traitement d'erreurs à vous soumettre
Bonne soirée
Hervé
 
Re : Erreur sur test en TEXTBOX

Je profite de la mi-temps
J'ai testé : JP cà marche .... sauf que si l'on insiste à laisser que combobox2 ... ca part en
erreur !!!
Autant faire au mieux !!! pour empêcher cela , non ?
Justine a eu aussi une bonne idée .. et là ?
 
Re : Erreur sur test en TEXTBOX

Bonjour

Je profite de la mi-temps
J'ai testé : JP cà marche .... sauf que si l'on insiste à laisser que combobox2 ... ca part en
erreur !!!
Je n'ai pas de problème, le message s'affiche en permanence.
Par contre si les deux combobox sont vides ....
Il faut rajouter ce code
Code:
If ComboBox2.Value = "" And ComboBox1 = "" Then
Select Case MsgBox("Voulez vous continuer ?" _
                   & vbCrLf & "" _
                   , vbYesNo Or vbExclamation Or vbDefaultButton1, Application.Name)

    Case vbYes
        Unload.me
    Case vbNo
        Exit Sub
End Select
End If

JP
 
Re : Erreur sur test en TEXTBOX

Bonjour tous , JP

Je joins le point ou ça plante
1) je mets un nom en combo2 et return ---> message d'erreur , ca va
2) je me mets en combo1 et return ( donc vide) puis valide par OK
3) Plantage au code , comme ci-joint
 

Pièces jointes

  • Erreur_graph.gif
    Erreur_graph.gif
    3.3 KB · Affichages: 43
  • Erreur_graph.gif
    Erreur_graph.gif
    3.3 KB · Affichages: 44
  • Erreur_graph.gif
    Erreur_graph.gif
    3.3 KB · Affichages: 46
Re : Erreur sur test en TEXTBOX

Bonjour

Lancer un graph avec macro pose toujours des problèmes, car les macros sont réalisées avec l'éditeur et personnellement je ne connais pas les paramètres . De plus les graphes sont crées avec un numéro d'ordre.

Pour régler le problème sans trop de recherche le plus simple est d'écrire deux macros une avec un nom et la deuxième avec deux noms, un test simple permet de lancer la macro adéquate.

Pour ma part j'ai une erreur mais pas au même endroit.
' Contrôle si un graph existe déjà
N_gr = Worksheets("feuil2").Shapes.Count

JP
 
Re : Erreur sur test en TEXTBOX

En fait l e Pb ne vient pas du graph mais en est la conséquence à cause du titre : Tnom
Je ne traite pas le cas ( dans le code du bouton OK ) de combo1 vide et combo2 non vide puisque c'est illogique !!
par contre il faudrait interdire ce choix avant le clic OK et donc interdire la possibilité de demarrer le graph
Info : j'ai traité les N° d'ordre de graph , il n'ya pas de graph1..2 .. 3 etc , car j'ai mis en dur
Graph_1 , donc toujours le même nom , c'est une astuce que le forum m'a donné , justement pour effacer à chaque fois sans erreur
Je pense qu'il faudrait tester dans combo1: que si vide et combo2 non vide alors erreur et RAZ des boites ... c'est là que je butte !!!

Y at-il la solution ?? ( assez simple si possible)
 
Re : Erreur sur test en TEXTBOX

Bonsoir

En fait l e Pb ne vient pas du graph mais en est la conséquence à cause du titre : Tnom
Je pense qu'il faudrait tester dans combo1: que si vide et combo2 non vide alors erreur et RAZ des boites ... c'est là que je butte !!!

Y at-il la solution ?? ( assez simple si possible)

Il faut ecrire

If ComboBox2.Value <> "" And ComboBox1 = "" Then
combobox2.value = ""
exit sub

JP
 
Re : Erreur sur test en TEXTBOX

JP
Je suis désolé ... snif !! ca ne marche pas ; As tu essayé de le mettre dans le code ?
J'ai essayé Bcp de code et tjs pareil !!
Il y en a + dans plusieurs têtes que dans une !! , c'est pour cela que je fais appel à vous !!
 
Re : Erreur sur test en TEXTBOX

Bonsoir à tous , JP !
L'image jointe montre ce que j'obtiens lorsque après 2 je clique en 1 !
 

Pièces jointes

  • Erreur_graph.gif
    Erreur_graph.gif
    8.3 KB · Affichages: 39
  • Erreur_graph.gif
    Erreur_graph.gif
    8.3 KB · Affichages: 37
  • Erreur_graph.gif
    Erreur_graph.gif
    8.3 KB · Affichages: 38
- 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
Retour