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 FOr sur un ensemble de valeurs


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Femme Profil pro
    Consultant fonctionnel
    Inscrit en
    Septembre 2013
    Messages
    25
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations professionnelles :
    Activité : Consultant fonctionnel
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Septembre 2013
    Messages : 25
    Par défaut Boucle FOr sur un ensemble de valeurs
    Bonjour,

    Je voudrais faire une boucle sur un ensemble de valeurs mais je ne sais pas si c'est possible.

    Voici le code que j'ai essayé de faire :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    For Each k In [42,43,44,45,49,60,61,62,67,68,69,70,71,75,76,77,78,79,84,85,86,87,89,96,97,98,99,107,108,109,110,117,118,119,120,129,130,131,132]
     
        For i = 6 To LastRow1
            For j = 6 To Lastrow2
                If Worksheets("XSCL").Cells(i, 2).Value = Worksheets("XSCL").Cells(j, 2).Value _
                And Worksheets("XSCL").Cells(i, 8).Value = Worksheets("XSCL").Cells(j, 8).Value Then
                Worksheets("XSCL").Cells(i, k).Value = Worksheets("XSCL").Cells(j, k).Value
                Exit For
                End If
            Next j
        Next i
    Next k
    End Sub
    Ça bloque à la ligne un bien sur.

    Je précise qu'il n'y a pas de relation entre les nombres, ce sont des références à des colonnes.

    Quelqu'un a t il une idée ?

  2. #2
    Inactif  
    Homme Profil pro
    Inscrit en
    Septembre 2012
    Messages
    1 733
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations forums :
    Inscription : Septembre 2012
    Messages : 1 733
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    For Each k In Array(42, 43, 44, 45, 49, 60, 61, 62, 67, 68, 69, 70, 71, 75, 76, 77, 78, 79, 84, 85, 86, 87, 89, 96, 97, 98, 99, 107, 108, 109, 110, 117, 118, 119, 120, 129, 130, 131, 132)

  3. #3
    Membre averti
    Femme Profil pro
    Consultant fonctionnel
    Inscrit en
    Septembre 2013
    Messages
    25
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations professionnelles :
    Activité : Consultant fonctionnel
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Septembre 2013
    Messages : 25
    Par défaut
    Merci !

    Avant de cloturer, j'ai une dernière question :

    Ma condition de ne veut pas se valider alors qu'elle devrait...(pour i=6, j=6 et k=42)


    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
    For Each k In Array(42, 43, 44, 45, 49, 60, 61, 62, 67, 68, 69, 70, 71, 75, 76, 77, 78, 79, 84, 85, 86, 87, 89, 96, 97, 98, 99, 107, 108, 109, 110, 117, 118, 119, 120, 129, 130, 131, 132)
     
        For i = 6 To LastRow1
            For j = 6 To Lastrow2
     
     
            MsgBox Worksheets("XSCL").Cells(i, 2).Value '=600238
            MsgBox Worksheets("Previous_Table").Cells(j, 2).Value '=600238
            MsgBox Worksheets("XSCL").Cells(i, 8).Value '=58
            MsgBox Worksheets("Previous_Table").Cells(j, 8).Value '=58
     
     
                If (Worksheets("XSCL").Cells(i, 2).Value = Worksheets("Previous_Table").Cells(j, 2).Value _
                And Worksheets("XSCL").Cells(i, 8).Value = Worksheets("Previous_Table").Cells(j, 8).Value) Then
     
                Worksheets("XSCL").Cells(i, k).Value = Worksheets("Previous_Table").Cells(j, k).Value
                Exit For
     
                End If
            Next j
        Next i
    Next k
    End Sub
    D'où pourrais-venir l'erreur ?

  4. #4
    Inactif  
    Homme Profil pro
    Inscrit en
    Septembre 2012
    Messages
    1 733
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations forums :
    Inscription : Septembre 2012
    Messages : 1 733
    Par défaut
    MsgBox Worksheets("XSCL").Cells(i, 2).Value '=600238
    MsgBox Worksheets("Previous_Table").Cells(j, 2).Value '=600238
    MsgBox Worksheets("XSCL").Cells(i, 8).Value '=58
    MsgBox Worksheets("Previous_Table").Cells(j, 8).Value '=58

    Tu as peut être une des valeurs qui est au format texte... Essaie de comparer de la sorte

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    If cstr(Worksheets("XSCL").Cells(i, 2).Value) = cstr(Worksheets("Previous_Table").Cells(j, 2).Value) _
                And cstr(Worksheets("XSCL").Cells(i, 8).Value) = cstr(Worksheets("Previous_Table").Cells(j, 8).Value) Then

  5. #5
    Membre averti
    Femme Profil pro
    Consultant fonctionnel
    Inscrit en
    Septembre 2013
    Messages
    25
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations professionnelles :
    Activité : Consultant fonctionnel
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Septembre 2013
    Messages : 25
    Par défaut
    Oui ça marche, merci !

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

Discussions similaires

  1. [E-03] Boucle For Next jusqu'à la dernière valeur trouvée
    Par moilou2 dans le forum Macros et VBA Excel
    Réponses: 15
    Dernier message: 27/11/2008, 14h57
  2. [BASH] boucle for sur des fichiers, recuperation du chemin ?
    Par zevince dans le forum Shell et commandes GNU
    Réponses: 13
    Dernier message: 13/11/2007, 10h47
  3. Boucle for sur fichiers sauf un !
    Par coincoin22 dans le forum Linux
    Réponses: 4
    Dernier message: 13/08/2007, 14h41
  4. Réponses: 2
    Dernier message: 09/09/2006, 21h08
  5. [Eval] Problème de boucle for sur des tableaux
    Par battle_benny dans le forum Général JavaScript
    Réponses: 3
    Dernier message: 12/01/2006, 23h55

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