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 :

problème de boucle


Sujet :

Macros et VBA Excel

  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Juillet 2008
    Messages
    130
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2008
    Messages : 130
    Par défaut problème de boucle
    Bonjour,
    Je cherche à copier toutes les cellules des colonnes A et B à partir de la ligne 6 jusqu'à la dernière cellule non vide de la colonne A. Pour cela, j'utilise ce programme:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     
        Dim i, j As Integer   
            i = 6   
        Do While (Range("A" & i).Value <> "")
             Range("A" & i & ":B" & i).Select
            Selection.Copy
            Sheets("Récap_3ème tri_V_élo1").Select
            Range("A" & i + 7&).Select
            ActiveSheet.Paste
             i = i + 1          
        Loop
    Mon problème est qu'excel sort de la boucle après la 1ère ligne qu'il copie alors que ce n'est pas la dernière cellule non vide.
    Est ce que quelqu'un aurait une solution ?
    Merci d'avance.

  2. #2
    Membre éclairé Avatar de zandru
    Homme Profil pro
    Ingénieur conception mécanique
    Inscrit en
    Mars 2008
    Messages
    507
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Ingénieur conception mécanique
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2008
    Messages : 507
    Par défaut
    Bonjour,

    il faut réactiver ta feuille de départ à la fin de ton traitement, sinon la condition du while s'applique sur ta feuille Sheets("Récap_3ème tri_V_élo1") qui est la feuille active lors du deuxieme bouclage.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
        Dim i, j As Integer   
            i = 6   
        Do While (Range("A" & i).Value <> "")
             Range("A" & i & ":B" & i).Select
            Selection.Copy
            Sheets("Récap_3ème tri_V_élo1").Select
            Range("A" & i + 7&).Select
            ActiveSheet.Paste
            Sheet("feuil1").select 'feuil1 est le nom de ta feuil de départ
             i = i + 1          
        Loop

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Juillet 2008
    Messages
    130
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2008
    Messages : 130
    Par défaut
    Merci beaucoup. Ta solution marche nickel.

  4. #4
    Membre Expert Avatar de Godzestla
    Homme Profil pro
    Chercheur de bonheur
    Inscrit en
    Août 2007
    Messages
    2 403
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 60
    Localisation : Belgique

    Informations professionnelles :
    Activité : Chercheur de bonheur
    Secteur : Industrie

    Informations forums :
    Inscription : Août 2007
    Messages : 2 403
    Par défaut
    Salut,

    pour info c'est plus propre et plus rapide comme ceci. (évite les selects qui ralentissent le code).

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
        Dim i, j As Integer
            i = 6
        With ActiveSheet
            Do While (.Range("A" & i).Value <> "")
            .Range("A" & i & ":B" & i).Copy
            ActiveSheet.Paste Destination:=Worksheets("Récap_3ème tri_V_élo1").Range("A" & i + 7)
            i = i + 1
        Loop
        End With

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

Discussions similaires

  1. Problème de boucles imbriquées
    Par Gnux dans le forum Algorithmes et structures de données
    Réponses: 9
    Dernier message: 09/12/2005, 20h26
  2. [Tableaux] Problème avec boucle
    Par MYster dans le forum Langage
    Réponses: 6
    Dernier message: 11/11/2005, 18h39
  3. Problème de boucle
    Par TheUltimaSephiroth dans le forum C
    Réponses: 8
    Dernier message: 10/10/2005, 13h58
  4. Problème de boucle
    Par Louis-Guillaume Morand dans le forum Langage SQL
    Réponses: 3
    Dernier message: 25/09/2005, 09h10
  5. Problème de boucle
    Par basclln dans le forum C++
    Réponses: 19
    Dernier message: 02/04/2005, 09h13

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