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 :

Macro comparaison et transposition [XL-2010]


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Candidat au Club
    Femme Profil pro
    Assistant aux utilisateurs
    Inscrit en
    Janvier 2016
    Messages
    3
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Assistant aux utilisateurs
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Janvier 2016
    Messages : 3
    Par défaut Macro comparaison et transposition
    bonjour,

    étant débutante en VBA, je bloque depuis 2 jours sur la manip que je dois faire.
    En fait, j'ai un fichier excel à 2 feuilles, sur la premier j'ai un fichier de type :

    cadre (colA)        nom(colB)
    1                          a
    1                          b
    1                          c
    2                          a
    3                          a
    3                          b             

    sur ma feuille 2 j'ai un fichier de type
    cadre (colA) nom1(colB) nom2(colC) nom3(colD) nomX(colX)
    1 a b c
    2 a
    3 a b

    J'ai bien réussi à importer mes noms de cadre en supprimant les doublons de façons à n'avoir que des valeurs uniques, en revanche je ne sais pas comment coder la boucle qui permettrait pour un numéro de cadre donné dans la feuille 2 de copier et de coller les pacages correspondants mais en ligne cette fois

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    Sub import_visite()
    'import_visite Macro'
        Sheets("lyon").Select
        Columns("A:A").Select
        Selection.Copy
        Sheets("siege").Select
        Columns("A:A").Select
        ActiveSheet.Paste
        Application.CutCopyMode = False
        ActiveSheet.Range("$A$1:$AH$2397").RemoveDuplicates Columns:=1, Header:= _
            xlYes
     
    End Sub
    Voilà j'espère avoir été assez claire Quelqu'un pour m'aider ?

    bonne journée à tous !

  2. #2
    Expert confirmé
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mai 2013
    Messages
    3 609
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Alimentation

    Informations forums :
    Inscription : Mai 2013
    Messages : 3 609
    Par défaut
    Bonjour,

    Pour chaque cadre, est-ce qu'il peut y avoir des noms qui se répètent ?

  3. #3
    Candidat au Club
    Femme Profil pro
    Assistant aux utilisateurs
    Inscrit en
    Janvier 2016
    Messages
    3
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Assistant aux utilisateurs
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Janvier 2016
    Messages : 3
    Par défaut
    non par cadre un seul nom possible

  4. #4
    Expert confirmé
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mai 2013
    Messages
    3 609
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Alimentation

    Informations forums :
    Inscription : Mai 2013
    Messages : 3 609
    Par défaut
    Ceci devrait faire l'affaire.
    À adapter selon ton fichier.
    Je présume des entêtes en ligne 1 et les données sur les lignes suivantes


    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
    Sub CopieTranspose()
        Dim I As Long, nbLignes As Long
        Dim Tablo
        Dim Recherche As Range
     
        'Copie des cadres sans doublons
        Sheets("lyon").Columns("A:A").Copy Sheets("siege").Range("A1")
        Application.CutCopyMode = False
        Sheets("siege").Columns("A").RemoveDuplicates Columns:=1, Header:=xlYes
     
        'Création d'un tableau avec les cadres uniques
        nbLignes = Sheets("siege").Cells(Rows.Count, "A").End(xlUp).Row
        Tablo = Sheets("siege").Range("A2:A" & nbLignes).Value
     
        Sheets("lyon").AutoFilterMode = False
        Sheets("lyon").Rows(1).AutoFilter
     
        'Copie transposée des noms
        nbLignes = Sheets("lyon").Cells(Rows.Count, "A").End(xlUp).Row
        For I = 1 To UBound(Tablo)
            Sheets("lyon").Rows(1).AutoFilter Field:=1, Criteria1:=Tablo(I, 1)
            Sheets("lyon").Range("B2:B" & nbLignes).SpecialCells(xlCellTypeVisible).Copy
            Set Recherche = Sheets("siege").Columns("A").Find(Tablo(I, 1), LookIn:=xlValues, LookAt:=xlWhole)
            If Not Recherche Is Nothing Then
                Sheets("siege").Range("B" & Recherche.Row).PasteSpecial xlPasteValues, Transpose:=True
            End If
        Next
    End Sub

  5. #5
    Candidat au Club
    Femme Profil pro
    Assistant aux utilisateurs
    Inscrit en
    Janvier 2016
    Messages
    3
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Assistant aux utilisateurs
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Janvier 2016
    Messages : 3
    Par défaut
    ça marche nickel,

    Merci beaucoup !!

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

Discussions similaires

  1. [XL-2007] Macro comparaison spécifique et très compliquée
    Par innuendo67 dans le forum Macros et VBA Excel
    Réponses: 6
    Dernier message: 08/09/2015, 12h59
  2. Optimisation macro comparaison / Plantage
    Par Geoffray69 dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 22/07/2013, 10h00
  3. Macro : Comparaison 2 liste
    Par roidurif dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 25/11/2012, 23h09
  4. [XL-2010] Macro comparaison date
    Par wulfkind dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 14/12/2011, 11h25
  5. Macro Comparaison complexe
    Par obie78 dans le forum Macros et VBA Excel
    Réponses: 5
    Dernier message: 10/08/2010, 21h34

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