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 :

Insertion selon condition


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Homme Profil pro
    Collégien
    Inscrit en
    Septembre 2013
    Messages
    24
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Collégien
    Secteur : High Tech - Matériel informatique

    Informations forums :
    Inscription : Septembre 2013
    Messages : 24
    Par défaut Insertion selon condition
    Bonjour,

    Voilà apres plusieur jour de recherche je trouve pas ce que je recherche.
    Alors je vais vous expliquer.
    J'ai une feuille "ECART"

    Dans cette feuille j'ai deux tableau mis cote à cote.
    On appelera le Tableau 1 les collones A à D et Tableau 2 de E a H.
    J'ai dans la collone A du tableau 1 des numero de client.
    Ces même numero de retrouve dans le Tableau 2 en collone E.
    Je fait un tri croissant sur les deux tableaux en collone A et E.

    Le problème c'est que lorsque je fait un tris, j'ai pas toujours le même numero de client sur le même ligne.

    Par exemple:

    En A4 j'ai le client 12345 en E4 j'ai le client 12346.
    Vue que j'ai pas le même client, j'aimerais insérer une ligne de E4 a H4 si et seulement si les valeur de EX ne sont pas identique en AX.Après la macro passe à la seconde ligne jusque la dernier.

    J'aimerais que la macro face tout les ligne jusque la dernier blanche des collone E à H. Car les donner peuvent varier

    J'espers avoir était claire. Au pire je vais vous mettre un fichier pour montrer ce que sa donne avant et apres la macro.

    Cordialement

    Fichier joint:
    Fichiers attachés Fichiers attachés

  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
    Je copie ton tableau de départ en A1 de la feuille 2. Puis: A adapter

    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
    Sub toto()
        Dim i As Long, j As Long, k As Long
        k = 2
        With Sheets("Feuil2")
            For i = 2 To .Range("A" & .Rows.Count).End(xlUp).Row
                Feuil3.Cells(k, 1) = .Cells(i, 1)
                Feuil3.Cells(k, 2) = .Cells(i, 2)
                Feuil3.Cells(k, 3) = .Cells(i, 3)
                Feuil3.Cells(k, 4) = .Cells(i, 4)
                For j = 2 To .Range("A" & .Rows.Count).End(xlUp).Row
                    If .Cells(i, 1) = .Cells(j, 5) Then
                        Feuil3.Cells(k, 5) = .Cells(i, 5)
                        Feuil3.Cells(k, 6) = .Cells(i, 6)
                        Feuil3.Cells(k, 7) = .Cells(i, 7)
                        bool = True
                    End If
                Next j
                k = k + 1
            Next i
        End With
    End Sub

  3. #3
    Membre averti
    Homme Profil pro
    Collégien
    Inscrit en
    Septembre 2013
    Messages
    24
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Collégien
    Secteur : High Tech - Matériel informatique

    Informations forums :
    Inscription : Septembre 2013
    Messages : 24
    Par défaut
    J'ai testé la macro sans la modifier. J'ai pris le tableau et coller en A1 de la feuille 2 sauf que le résultat en feuille 3 est pas correct.
    Je tes uplodé le meme fichier apres macro sur la feuille 3 ainsi que le résultat que normalement je devrais avoir.

    Cordialement
    Fichiers attachés Fichiers attachés

  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
    Petite coquille
    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
    Sub toto()
        Dim i As Long, j As Long, k As Long
        k = 2
        With Sheets("Feuil2")
            For i = 2 To .Range("A" & .Rows.Count).End(xlUp).Row
                Feuil3.Cells(k, 1) = .Cells(i, 1)
                Feuil3.Cells(k, 2) = .Cells(i, 2)
                Feuil3.Cells(k, 3) = .Cells(i, 3)
                Feuil3.Cells(k, 4) = .Cells(i, 4)
                For j = 2 To .Range("A" & .Rows.Count).End(xlUp).Row
                    If .Cells(i, 1) = .Cells(j, 5) Then
                        Feuil3.Cells(k, 5) = .Cells(j, 5)
                        Feuil3.Cells(k, 6) = .Cells(j, 6)
                        Feuil3.Cells(k, 7) = .Cells(j, 7)
                        bool = True
                    End If
                Next j
                k = k + 1
            Next i
        End With
    End Sub

  5. #5
    Membre averti
    Homme Profil pro
    Collégien
    Inscrit en
    Septembre 2013
    Messages
    24
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Collégien
    Secteur : High Tech - Matériel informatique

    Informations forums :
    Inscription : Septembre 2013
    Messages : 24
    Par défaut
    ?? Je comprend pas "Petite coquille"

  6. #6
    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
    dans ma deuxième boucle j'avais mis des i et pas de j

Discussions similaires

  1. Insertion Icone dans Graphe Excel selon Condition
    Par lindoushka dans le forum Excel
    Réponses: 8
    Dernier message: 18/07/2014, 07h37
  2. [HTML][CSS] Redimensionner une image selon condition
    Par Eilkh dans le forum Mise en page CSS
    Réponses: 2
    Dernier message: 14/02/2006, 15h55
  3. [VB.net] Générer une date selon condition
    Par WriteLN dans le forum Windows Forms
    Réponses: 2
    Dernier message: 20/10/2005, 16h12
  4. [VB.NET] Changer de classe selon condition
    Par daner06 dans le forum Windows Forms
    Réponses: 4
    Dernier message: 24/10/2004, 10h04
  5. DLLs chargées selon condition
    Par Benjamin GAGNEUX dans le forum API, COM et SDKs
    Réponses: 9
    Dernier message: 12/08/2004, 18h14

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