Activer boucle avec valeur input

Aide et conseils concernant AutoIt et ses outils.
Règles du forum
.
Répondre
hyluzion
Niveau 1
Niveau 1
Messages : 13
Enregistré le : ven. 12 févr. 2016 10:29
Status : Hors ligne

Activer boucle avec valeur input

#1

Message par hyluzion »

Bonjour, je récupère des valeurs dans deux input.
Lorsque je ne dépasse pas 100 pour les valeurs entrées, je rentre dans ma boucle.
Dès que je dépasse, je n'y rentre plus. J'ai pourtant inséré une message box juste avant la boucle pour vérifier mes deux valeurs et si la condition était valide. Quel est le problème ?

Code : Tout sélectionner

$Compteur02 = GUICtrlRead ($InputDebutNum) //ex:90
            $FinNum = GUICtrlRead ($InputFinNum) //ex: 120
            
            MsgBox (0, "", $Compteur02 & " " & $FinNum) //Affiche 90 120

            If $Compteur02 <= $FinNum Then
            While $Compteur02 <= $FinNum
	    MsgBox (0, "", $Compteur02 & " " & $FinNum)
	    $Numero = Zero($Compteur02)
	    FileWriteLine ($ID_fichier, $Numero & ", " & $Ligne_Valeur)
	    $Compteur02 = $Compteur02 + 1
	    WEnd
	    Else
	    MsgBox (0, "", "Erreur, le numéro de début est plus grand que celui de fin.") //Affiche l'erreur au lieu de rentrer dans la boucle.
	   EndIf 
Avatar du membre
walkson
Modérateur
Modérateur
Messages : 1037
Enregistré le : ven. 12 août 2011 19:49
Localisation : Hurepoix
Status : Hors ligne

Re: Activer boucle avec valeur input

#2

Message par walkson »

Bonjour

Code : Tout sélectionner

$aa = 0
$bb = 100
If $aa <= $bb Then
While $aa <= $bb
	$aa += 1
	ConsoleWrite("A" & $aa & @CR)
WEnd
Else
	MsgBox(0,"","erreur");le message n'apparait pas car première condition est vrai
EndIf
;===================================================
$aa = 0
$bb = 100
While 1
If $aa <= $bb Then
	$aa += 1
	ConsoleWrite("B" & $aa & @CR)
Else
	MsgBox(0,"","erreur")
	ExitLoop
EndIf
WEnd
Cordialement,
Walkson
"Horas non numero nisi serenas " Le canon de midi
(Je ne compte que les heures heureuses)
hyluzion
Niveau 1
Niveau 1
Messages : 13
Enregistré le : ven. 12 févr. 2016 10:29
Status : Hors ligne

Re: Activer boucle avec valeur input

#3

Message par hyluzion »

Merci de t'attarder sur mon probleme.
Cependant, je comprend le fonctionnement d'une boucle et l'incrémentation d'une variable, mon problème est que selon ma première msg box, $compteur02 vaut bien 90 et $InputFinNum vaut bien 120.
Hors je ne rentre pas dans ma boucle alors que je devrais y entrer...

Code : Tout sélectionner

While $Compteur02 <= $FinNum
Avatar du membre
mikell
Spammer !
Spammer !
Messages : 6292
Enregistré le : dim. 29 mai 2011 17:32
Localisation : Deep Cévennes
Status : Hors ligne

Re: Activer boucle avec valeur input  

#4

Message par mikell »

C'est parce que le GUICtrlRead retourne une string
Il faut convertir avant comparaison : $Compteur02 = Number(GUICtrlRead($InputDebutNum) )
" L'échec est le fondement de la réussite. " (Lao-Tseu )
" Plus ça rate, plus on a de chances que ça marche " (les Shadoks )
hyluzion
Niveau 1
Niveau 1
Messages : 13
Enregistré le : ven. 12 févr. 2016 10:29
Status : Hors ligne

Re: Activer boucle avec valeur input

#5

Message par hyluzion »

Merci beaucoup. S'était bien un problème de conversion :)
Répondre