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

VB 6 et antérieur Discussion :

Itération boucle While ne fonctionne pas


Sujet :

VB 6 et antérieur

  1. #1
    Candidat au Club
    Homme Profil pro
    Ingénieur qualité méthodes
    Inscrit en
    Septembre 2016
    Messages
    3
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Ingénieur qualité méthodes

    Informations forums :
    Inscription : Septembre 2016
    Messages : 3
    Points : 4
    Points
    4
    Par défaut Itération boucle While ne fonctionne pas
    Bonjour,

    Je fais boucler une action avec la boucle while, ma condition étant un nombre de cellules non-vide calculé. Le programme appelé fait un tri dans un tableau à partir de la valeur d'une cellule, cellule variable.
    La boucle while s’exécute le bon nombre de fois, mais la valeur utilisée pour le tri ne s'incrémente pas. Voici mon code (très "débutant", milles excuses)

    Ligne 20, la valeur qui devrait bougé


    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
    27
    28
    Private Sub Bouclage_N_Options_Click()
    Dim NumOP As Integer
    Dim i As Integer
    Application.ScreenUpdating = False
     
        NumOP = Application.WorksheetFunction.CountA(Range("E4:E30"))
        MsgBox NumOP
        i = 0
         While i < NumOP
         Call CalculNumAll
         i = i + 1
         Wend
     
    Application.ScreenUpdating = True
    End Sub
     
    Public Sub CalculNumAll()
     
        Sheets("CDV").Select 'Tri de la feuille CDV selon Num Option
        ActiveSheet.Range("$A$1:$O$500000").AutoFilter Field:=8, Criteria1:=Sheets("Home").Range("E" & i + 4).Value
        Sheets("Home").Select
     
        Call AjoutDates2
        Call TriDatesetCollage
     
     
     
    End Sub

  2. #2
    Membre éclairé
    Inscrit en
    Décembre 2007
    Messages
    512
    Détails du profil
    Informations forums :
    Inscription : Décembre 2007
    Messages : 512
    Points : 671
    Points
    671
    Par défaut correction
    Bonjour

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
     
    ...
     Call CalculNumAll(i)
    ...
     
    Public Sub CalculNumAll(i as integer)
    ...
    Il faut passer la variable i dans la procédure.

  3. #3
    Candidat au Club
    Homme Profil pro
    Ingénieur qualité méthodes
    Inscrit en
    Septembre 2016
    Messages
    3
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Ingénieur qualité méthodes

    Informations forums :
    Inscription : Septembre 2016
    Messages : 3
    Points : 4
    Points
    4
    Par défaut
    Citation Envoyé par iclic Voir le message
    Bonjour

    Il faut passer la variable i dans la procédure.
    Merci ça marche parfaitement !

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

Discussions similaires

  1. Réponses: 2
    Dernier message: 16/07/2015, 17h41
  2. boucle While ne fonctionne pas ?
    Par beegees dans le forum Langage
    Réponses: 3
    Dernier message: 07/08/2006, 20h19
  3. [MySQL] Boucle qui ne fonctionne pas bien que la 1ère fois
    Par R.L. dans le forum PHP & Base de données
    Réponses: 8
    Dernier message: 27/05/2006, 21h59
  4. [Tableaux] Ma boucle While ne va pas !!!
    Par tigzirt dans le forum Langage
    Réponses: 7
    Dernier message: 05/05/2006, 11h47
  5. Boucle While ne marche pas
    Par soltani.slim dans le forum Access
    Réponses: 2
    Dernier message: 23/06/2005, 10h41

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