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 :

Boucles et condition [XL-2016]


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    37
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2007
    Messages : 37
    Par défaut Boucles et condition
    Bonjour,


    J'ai un tableau:
    A | A1 | A2-1
    A | A1 | A2-2
    B | B1 | B2-2

    Je cherche une macro qui me permettrait de copier les données de tel sorte
    A
    A1
    A2-1
    A2-2 (si les données en colonne 2 identiques)
    B
    B1
    B2-2


    la macro du dessous me donne cela
    A
    A1
    A2-1
    A
    A1
    A2-2
    B
    B1
    B2-2
    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
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
     
    Sub test8()
    Dim lig, col As Integer
     
    ligne = 2
     
        For j = 0 To 3
         lig = 2 + j
     
               For i = 0 To 0
                    col = 1 + i
     
                    valeur1 = Sheets("Feuil1").Cells(lig, col).Value 
     
                     With Sheets("Feuil2")
                           .Cells(ligne, 1).Value = valeur1
                           ligne = ligne + 1
                      End With
                Next i
     
     
                For i = 0 To 0
                    col = 2 + i
     
                    valeur2 =Sheets("Feuil1").Cells(lig, col).Value 
     
                     With Sheets("Feuil2")
                     .Cells(ligne, 2).Value = valeur2
                      ligne = ligne + 1
                     End With
                Next i
     
                For i = 0 To 0
                    col = 3 + i
     
                    valeur3 = Sheets("Feuil1").Cells(lig, col).Value
     
                           With Sheets("Feuil2")
                          .Cells(ligne, 3).Value = valeur3
                          ligne = ligne + 1
                         End With
                     Next i
     
        Next j
     
    End Sub

  2. #2
    Expert éminent
    Avatar de Marc-L
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Avril 2013
    Messages
    9 468
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2013
    Messages : 9 468
    Par défaut
    Bonjour,

    une p'tite démonstration, la première ligne de la plage source étant une ligne de titres :

    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
    Sub Demo1()
            VS = [A1:C4].Value
            ReDim RT$(1 To (UBound(VS) - 1) * UBound(VS, 2), 0)
        For R& = 2 To UBound(VS)
            If VS(R, 1) & "¤" & VS(R, 2) = VS(R - 1, 1) & "¤" & VS(R - 1, 2) Then
                      N& = N& + 1
                RT(N, 0) = VS(R, 3)
            Else
                For C& = 1 To UBound(VS, 2)
                           N = N + 1
                    RT(N, 0) = VS(R, C)
                Next
            End If
        Next
            Cells(7).Resize(N).Value = RT
    End Sub
    _________________________________________________________________________________________________________

    Merci de cliquer sur pour chaque message ayant aidé puis sur pour clore cette discussion …

    _________________________________________________________________________________________________________
    Je suis Paris, Nice, Bruxelles, Charlie, …

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    37
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2007
    Messages : 37
    Par défaut
    merci

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

Discussions similaires

  1. Boucle avec condition "perdu"
    Par guismoman33 dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 08/06/2007, 10h38
  2. Problème de boucle et condition
    Par fantomas261 dans le forum Shell et commandes GNU
    Réponses: 5
    Dernier message: 20/04/2007, 18h05
  3. [Tableaux] Boucles et conditions
    Par Hayabusa dans le forum Langage
    Réponses: 6
    Dernier message: 18/12/2006, 00h07
  4. Tirer les formules avec boucle et condition excel
    Par melodyyy dans le forum Macros et VBA Excel
    Réponses: 25
    Dernier message: 19/10/2006, 15h11
  5. boucle avec condition d'arret changeante
    Par NicoH dans le forum Langage
    Réponses: 3
    Dernier message: 10/06/2003, 11h48

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