Comment compléter un tableau avec un autre tableau

Bonjour

Mes données d’entrée sont les suivantes, j'ai deux tableaux :

le 1er contient des références ou le positionnement est vide

le 2ème contient des références avec des positions

Normalement je devrais avoir les mêmes références dans chaque tableau mais ....................je n'en suis pas sur

Je souhaiterais trouver un moyen pour compléter les positions du 1er tableau avec les données du 2ème tableau .

Pouvez-vous m'aider à résoudre ce problème, svp ?

Merci

(bonjour)

Bonjour

Que veux tu dire par la ?

cdlt

jag83 a écrit :

le 1er contient des références ou le positionnement est vide

le 2ème contient des références avec des positions

C'est quoi des références ou le positionnement vide stp ?

Et des références avec positions aussi d'ailleurs...

bonjour

je te joins un tableau simplifié avec des données sur quelques lignes .

Des moyens il y en a, que ce soit en formule ou en vba. Maintenant ce qu'il faut faire pour éviter que les helpeurs travaillent deux fois plus sur un fichier (faire & defaire pour refaire ca prends du temps), c'est présenter un classeur au plus proche de la réalité afin qu'ils puissent écrire un code ou une formule totalement adapté (en fonction des colonnes des lignes, des pièges qu'il y a dans le fichier (genre des cellules fusionnées ou des chiffres en format texte...)

Cordialement

Bonjour

Compte tenu des points que tu annonces, je n'aurais les deux tableaux que mercredi soir

Si cela ne te dérange pas, je fournirais les données à ce moment là.

Merci

Cdlt

Aucunement

Bonjour

Comme convenu je te joins le fichier contenant les deux tableaux. Pour éviter les surprises, toutes les données y sont

Cdlt

42t1.xlsx (249.09 Ko)
Option Base 1
    Sub sortie()
        Dim a, b, c, d() As Variant
        Set c = CreateObject("Scripting.Dictionary")
        a = Feuil1.UsedRange
        b = Feuil2.UsedRange
        ReDim d(UBound(a), 2)
        For i = 2 To UBound(b)
            c.Item(b(i, 1)) = b(i, 2)
        Next
        n = 0
        For j = 2 To UBound(a)
            If c.Exists(Trim(a(j, 1))) Then n = n + 1: d(n, 1) = Trim(a(j, 1)): d(n, 2) = c.Item(Trim(a(j, 1)))
        Next
        With Feuil1
        .[d1:e1] = Array("Référence", "Position")
        .[d2].Resize(UBound(d), 2) = d
        End With
    End Sub

les résultats seront en feuille 1

Bonjour

Ta macro recopie les données qui sont communes avec T1 et T2 en feuille 1.

Est il possible de compléter la position en feuille 1 directement au lieu de coller le résultat dans la feuille 1 ?

Merci

Bonjour, oui je peux aller dans se sens je regarde ça tout de suite

Option Base 1
        Sub sortie()
            Dim a, b, c, d() As Variant
            Set c = CreateObject("Scripting.Dictionary")
            a = Feuil1.UsedRange
            b = Feuil2.UsedRange
            ReDim d(UBound(a), 2)
            For i = 2 To UBound(b)
                c.Item(b(i, 1)) = b(i, 2)
            Next
            n = 0
            For j = 2 To UBound(a)
            d(j - 1, 1) = Trim(a(j, 1)): If c.Exists(Trim(a(j, 1))) Then d(j - 1, 2) = c.Item(Trim(a(j, 1)))
            Next

            Feuil1.[a2].Resize(UBound(d), 2) = d

        End Sub

Re

je n'y comprends plus rien. Tout à l"heure en insérant ta macro tout se passait bien. Mon erreur je ne l'ai pas enregistrer. Je refais plus rien ne marche et encore moins avec la nouvelle Peux tu, stp m'insérer la macro dans le fichier que je t'ai transmis.

Merci

Voilà...

Re

j'ai insérer un bouton que j'ai affecter à sortie. Après action sur le bouton j'ai les position :

ALB117 LB 46

GCFAN10712M LT 52

GCFAN107M LT 51

GHAAN1089 LC 82

MCFAN120 LT 22

NCUAN147 LF 12

NFJAN106 LG 42

UCD1062 LJ 73

ULHAN140 Local

Je ne comprend pas ?

Cdlt

Et que ne comprenez vous pas ?

Re

je devrais avoir plus de données communes ?

cdlt

Vous devez en avoir combien ?


Ah oui exact, il en manque une petite poignée (18), je regarde ça de suite

re

plusque çà je pense

parfois je suis une vrai quiche..

Rechercher des sujets similaires à "comment completer tableau"