IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Macros et VBA Excel Discussion :

léger probleme de boucle Do


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Profil pro
    Inscrit en
    Février 2007
    Messages
    450
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2007
    Messages : 450
    Par défaut léger probleme de boucle Do
    Bonsoir , j'ai écrit une fonction qui demande à un utilisateur d'entrer une note entre 0 et 20 et de l'afficher et de dire "recommence ta saisie" si la note n'est pas comprise entre 0 et 20 , voici le code :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    Function noteSaisie(ByVal x As Integer) As Integer
    x = Application.InputBox("Entre ta note", Type:=1)
        Do
        MsgBox "Votre note est" & x
        If x < 0 Or x > 0 Then
        MsgBox "recommencez votre saisie"
        End If
        Loop Until x >= 0 And x <= 20
        noteSaisie = x
    End Function
    Le programme marche mais le seul soucis que j'ai c'est que meme si je rentre une note comprise entre 0 et 20 , ça m'affiche bien la note mais ça me met tjs le message recommencez votre saisi , et quelquesoit l'endroit où je place mon if end if...

    Quelqu'un a t'il une petite explication?
    merci

  2. #2
    Membre éclairé
    Profil pro
    Inscrit en
    Février 2007
    Messages
    450
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2007
    Messages : 450
    Par défaut
    j'ai trouvé le problème j'ai oublié un 2 dvt le 0 dans ma condition mais j'ai un autre petit soucis , si je mets comme note -2 ça me met bien recommencez votre saisie mais ça me boucle sans arret dessus entre -2 et recommencez votre saisie

  3. #3
    Membre éclairé
    Profil pro
    Inscrit en
    Février 2007
    Messages
    450
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2007
    Messages : 450
    Par défaut
    laissez moi 2min je crois que je vais m'en sortir !

  4. #4
    Membre éclairé
    Profil pro
    Inscrit en
    Février 2007
    Messages
    450
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2007
    Messages : 450
    Par défaut
    j'ai réussi qu'en pensez vous ! :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    Function noteSaisie(ByVal x As Integer) As Integer
    x = Application.InputBox("Entre ta note", Type:=1)
        Do
        MsgBox "Votre note est" & x
        If x < 0 Or x > 20 Then
        MsgBox "recommencez votre saisie"
        x = Application.InputBox("Entre ta note", Type:=1)
        End If
        Loop Until x >= 0 And x <= 20
        noteSaisie = x
    End Function

  5. #5
    Membre éclairé
    Profil pro
    Inscrit en
    Février 2007
    Messages
    450
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2007
    Messages : 450
    Par défaut
    et là j'ai un soucis la boucle ne s'arrete pas c'est pas normal :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    Function noteSaisiebis(ByVal x As Integer) As Integer
    x = Application.InputBox("Entre votre note", Type:=1)
        Do While x >= 0 And x <= 20
        MsgBox "votre note est" & x
        If x < 0 Or x > 20 Then
        MsgBox "recommencez votre saisie"
        End If
        Loop
        noteSaisiebis (x)
    End Function

  6. #6
    Membre éclairé
    Profil pro
    Inscrit en
    Février 2007
    Messages
    450
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2007
    Messages : 450
    Par défaut
    j'y suis presque
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     
    Function noteSaisiebis(ByVal x As Integer) As Integer
    x = Application.InputBox("Entre votre note", Type:=1)
        Do While x < 0 Or x > 20
        MsgBox "recommencez votre saisie"
        x = Application.InputBox("Entre votre note", Type:=1)
        If x >= 0 And x <= 20 Then
        MsgBox "ta note est" & x
        End If
        Loop
    End Function
    mais là quand j'entre la note 15 rien ne s'affiche c'est normal ?

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Probleme de boucle a s arracher les cheuveux
    Par calimero642 dans le forum Langage
    Réponses: 6
    Dernier message: 16/03/2006, 14h44
  2. Probleme de boucle avec des processus sous UNIX
    Par sebastieng dans le forum POSIX
    Réponses: 6
    Dernier message: 15/10/2005, 18h57
  3. [Language]Problème de boucle
    Par marc_dd dans le forum Langage
    Réponses: 11
    Dernier message: 06/10/2005, 14h24
  4. Problem de boucle.....
    Par skad dans le forum C++
    Réponses: 6
    Dernier message: 29/09/2005, 16h28
  5. [C#] Probleme de boucle for et random
    Par Freeman166 dans le forum Windows Forms
    Réponses: 7
    Dernier message: 09/01/2005, 14h34

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo