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 :

Boucle while imbriqué, problème de renvoi de valeur


Sujet :

Macros et VBA Excel

  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Septembre 2008
    Messages
    17
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2008
    Messages : 17
    Points : 16
    Points
    16
    Par défaut Boucle while imbriqué, problème de renvoi de valeur
    bonjour,

    voila mon problème, j'ai le code ci -dessous et je voudrais un renvoi de toutes les valeurs le soucis c'est su'il ne renvoie qu'une valeur.
    Si quelqu'un peut m'aider svp
    'affecter la surperficie d'une salle
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    Sub surface()
    Dim salle As String
    Dim i As Integer
    Dim j As Integer
    Dim k As Integer
     
    j = 1
    i = 9
    k = 8
     
    Do While Cells(i, 2) <> ""
     
        salle = Cells(i, 1).Value 'récupère la valeur à chercher
     
            While Sheets("Salle").Cells(j, 1) <> "" ' parcours le tableau de la feuille salle
                If Sheets("Salle").Cells(j, 1) = salle Then
                    Cells(i, 8) = Sheets("Salle").Cells(j, 5) 'renvoie la valeur dans la cellule de la feuille active
     
                End If
            j = j + 1
            Wend
    i = i + 1
    Loop
     
    End Sub
    merci d'avance

  2. #2
    Invité
    Invité(e)
    Par défaut
    Bonjour,

    A mon avis, vous oubliez de réinitialiser la variable "j" :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    Sub surface()
    Dim salle As String
    Dim i As Integer
    Dim j As Integer
    Dim k As Integer
    
    j = 1
    i = 9
    k = 8
    
    Do While Cells(i, 2) <> ""
    
    salle = Cells(i, 1).Value 'récupère la valeur à chercher
    
    While Sheets("Salle").Cells(j, 1) <> "" ' parcours le tableau de la feuille salle
    If Sheets("Salle").Cells(j, 1) = salle Then
    Cells(i, 8) = Sheets("Salle").Cells(j, 5) 'renvoie la valeur dans la cellule de la feuille active
    
    End If
    j = j + 1
    Wend
    j = 1
    i = i + 1
    Loop
    
    End Sub

  3. #3
    Membre à l'essai
    Profil pro
    Inscrit en
    Septembre 2008
    Messages
    17
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2008
    Messages : 17
    Points : 16
    Points
    16
    Par défaut
    Merci c'est ca le problème

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

Discussions similaires

  1. Problème boucle while imbriquée dans autre boucle while
    Par nattydreadnatty dans le forum Langage
    Réponses: 3
    Dernier message: 25/08/2010, 14h58
  2. Boucle while imbriquées
    Par quentincabo dans le forum VB.NET
    Réponses: 14
    Dernier message: 04/04/2008, 11h29
  3. problème d'execution de 2 boucles while imbriquées
    Par missyos dans le forum Servlets/JSP
    Réponses: 4
    Dernier message: 17/03/2008, 14h01
  4. [MySQL] Boucle while imbriqué
    Par agbononamour dans le forum PHP & Base de données
    Réponses: 7
    Dernier message: 31/05/2007, 18h09
  5. [Tableaux] Boucle while imbriquer
    Par Le-Cortex dans le forum Langage
    Réponses: 11
    Dernier message: 09/09/2005, 14h22

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