Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum. Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !

Sujet : version boucle [ Algorithme / Maths ] (giudy)

dimanche 2 mars 2008 à 09:12:42 | version boucle

giudy

Salut tout le monde !

j'ai écris une fonction qui rend une note entre 0 et 20 ou l'utilisateur recommence la saisie si la note n'est pas comprise entre 0 et 20 :

Function noteSaisie(ByVal note As Double) As Double
'note entre 0 et 20
Do Until note <= 20
Application.InputBox ("Veuillez saisir une note comprise entre 0 et 20 ")
Loop

End Function

Sub testNoteSaisie()
Application.InputBox ("Veuillez saisir une note comprise entre 0 et 20 ")
End Sub

Mais ma fonction me fait ne boucle qui ne se termine pas meme si j'ai fait Loop
Qu'en dites vous ?  Peut on ecrire des versions differentes avec "until" puis  "while" et do....loop sans que ça tourne à l'infini ?

Merci



dimanche 2 mars 2008 à 11:30:23 | Re : version boucle

jmfmarques

Membre Club

Bonjour,

1) je ne vois pas quelle valeur de note tu passes à ta fonction.
2) <= 20 inclus des nombres négatifs !!! ?
3) je ne vois pas où ta fonction attribue à note la valeur saisie dans ton inputbox !!!
4) je ne vois pas non plus quelle valeur retourne ta fonction (tu ne lui en attribue aucune. or, une fonction est faite pour retourner la valeur qu'elle prend ...)

 

5) tu ne me parais pas développer sous VB6 mais sous VBA (et tu es iciç dans la section VB6) ...


dimanche 2 mars 2008 à 11:42:58 | Re : version boucle

jmfmarques

Membre Club
Voilà un exemple avec utilisation (bien inutile dans un tel cas à mon sens, mais bon ...) de fonction et avec boucle dans la fonction.

Private Sub Command1_Click()
  MsgBox "vous avez saisi " & noteSaisie()
End Sub

Private Function noteSaisie() As Double
  noteSaisie = -1
  Do Until noteSaisie <= 20 And noteSaisie >= 0
    noteSaisie = Val(InputBox("Veuillez saisir une note comprise entre 0 et 20 "))
  Loop
End Function

Adapte au besoin pour VBA (avec ton "Application.machin")


dimanche 2 mars 2008 à 11:46:49 | Re : version boucle

jmfmarques

Membre Club
Ah oui...

Et lis dans ton aide en ligne à quoi peut servir Isnumeric, puis utilise-le, afin d'éviter que l'utilisateur frappe une lettre par erreur et que la note soit alors 0 ou qu'il frappe "1blabla" et que la note soit 1 !!!

dimanche 2 mars 2008 à 12:25:56 | Re : version boucle

giudy

bonjour !

1) est ce qu'avec une boucle while ça ressemblerais à ça ?

Private Function noteSaisie3() As Double
  noteSaisie3 = -1
  Do
    noteSaisie3 = Val(InputBox("Veuillez saisir une note comprise entre 0 et 20 "))
  Loop While noteSaisie3 <> 20 And noteSaisie3 <> 0
End Function

Private Sub Command1_Click3()
  MsgBox "Votre note a été saisie avec succès !" & noteSaisie3()
End Sub

2) pour isNumeric , est ce que je peux l'introduire dans mon test ?
3) dans mon msgbox du test , est ce que je peux enlever la note qui s'affiche à coté du msg "Votre note a été saisie avec succès !"  ??


Thx


dimanche 2 mars 2008 à 14:28:18 | Re : version boucle

jmfmarques

Membre Club
J'ABANDONNE !!!!!!!!!
Et te conseille de ne plus mettre la charrue avant les boeufs !!!!
Il y a un minimum a connaître avant de commencer à développer... et ce minimum s'acquiert (comme tout un chacun) en lisant au moins les bases dans son aide en ligne.

Bon apprentisasge, donc.

dimanche 2 mars 2008 à 15:26:40 | Re : version boucle

giudy

c'est bon ! j'ai réussi pour les deux boucles until et while !
par contre est ce qu'on peut faire la fonction juste avec Do... Loop ? (sans while et until ?) , par exemple avec un if dans le corps de la fonction

Pour jmfmarques désolé mais  ou es l'aide en ligne ? (je suis nouveau sur le site)


dimanche 2 mars 2008 à 15:49:49 | Re : version boucle

jmfmarques

Membre Club
"Pour jmfmarques désolé mais  ou es l'aide en ligne ? (je suis nouveau sur le site) "

L'aide en ligne n'est pas sur ce site ni sur ce forum !
Elle est sur TA MACHINE (barre d'outil ==>>> ? ou Aide ou Help selon ta version !!!).
Nul (même les plus avancés des développeirs) ne peut valablement développer sans consulter régulèrement cette aide !...



Cette discussion est classé dans : boucle, version, note, loop, comprise


Répondre à ce message

Sujets en rapport avec ce message

boucle do...loop [ par matrey ] j'ai des objets dont le caption est a, b, c... jusqu'à z.Avec une boucle j'affiche leur caption dans un textbox l'un après l'autre. Comment faire pour parcour fichier [ par ddn ] je voudrais faire une boucle pour parcourir un fichier mais sans faire une condition avec eof. je voudrais reussir a dire ja vais a la ligne suivante Comment attendre un resultat sans boucle do loop ? [ par alainnews ] salut,j'ai un probleme avec mon appli, je converse sans probleme avec un automate pour faire deplacer un axe.Jusqu'a present tout baigne mais j'attend pouvoir utiliser les touches du clavier quand il y a une boucle do .... loop en execution. [ par j5em3110 ] Bonjour. Qui pourrait me dire comment fait t'on pour interagire avec le clavier pour certaine touche font telle et elle action dans une boucle do ... Boucle Do While/Loop dans boucle For Next [ par ATitus ] Bonjour.Voila j'ai une boucle de lecture d'un fichier texte, qui me permet de trouver le nombre d'occurences d'une valeur = = = = = Cherche ValeurXDo afficher un texte entre 2 boucles do loop [ par Khahazad ] Boujour a tous! Tout d'abord LE CONTEXT : Je travail sur un ordi relié à un automate. Je lance une commande de mouvement, je test si le mouvement est Probleme de loop [ par flatron123 ] Bonjour a tous, J'ai un soucis dans une boucle. En fait, je lance une boucle qui inscrit dans un fichier texte une ligne. Le soucis est qu'apres que Loop [ par Excalius ] Bonjour à tous,mon programme est presque bouclé mais je n'arrive pas à terminer la dernière loop (quelle incroyable ironie). Le voiciDim ext As String Comment sortir d'une boucle (Do loop, for next ...) [ par jmdelhalle ] BonjourComment faire pour sortir d'une boucle (sans quitter la procédure ou la fonction en cours) avant la fin du traitementtant que toto 0 .../.... BOUCLE DO LOOP-FOR [ par arnonatex ] Bonjour j'ai un programme ds lequel je veux générer des cellules à partir de formules jusqu'à ce que la cellule atteigne un nombre mais la boucle do l


Nos sponsors

Sondage...

CalendriCode

Téléchargements



Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel BAÏSE, Merci à Vincent pour ses précieux conseils
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés
Temps d'éxécution de la page : 0,218 sec

Google Coop CodeS-SourceS Google Coop CodeS-SourceS


Certaines images présentes sur le site (notament certains avatars) sont issues des collections IconShock, donc si vous souhaitez utiliser ces icons vous devez les acheter, ne les copiez pas et ne utilisez pas dans vos sites et applications sans les avoir commandé.