Réconciliation de datas

Bonjour à tous,

Je suis actuellement en train de travailler sur des tableaux de données assez volumineux et j'ai besoin de faire un rapprochement entre deux d'entre eux. Voici à quoi ressemblent les tableaux :

CODE1DATE1VALUECODEEXIST
DATE2VALUE
DATE3VALUE
CODE2DATE1VALUECODEEXIST
DATE2VALUE
DATE1CODE1
DATE1CODE2
DATE2CODE1
DATE2CODE2

En fait, par exemple, j'ai besoin de collecter dans le 1er tableau la valeur de CODE1 à DATE1 et de la coller dans le 2ème tableau sur la bonne ligne en faisant correspondre le code et la date pour chaque CODEx et DATEy. J'ai mis une marque "CODEEXIST" sur la quatrième colonne pour simplifier la création de la macro.

En fait, je pensais faire des boucles imbriquées comme ci-dessous :

Sub reco()

For i = 1 To 100
    If Cells(i, 4) = "CODEEXIST" Then
        For y = 1 To 100
            If Sheets("Table2").Cells(y, 2).Value = Sheets("Table1").Cells(i, 1).Value Then
                For Z = i To Range("D:D").Find(What:="CODEEXIST", After:=Cells(i, 4))
                    If Sheets("Table2").Cells(y, 1).Value = Sheets("Table1").Cells(Z, 2).Value Then
                        Sheets("Table2").Cells(y, 3).Value = Sheets("Table1").Cells(Z, 3).Value
                    End If
                Next Z
            End If
        Next y
    End If
Next i
End Sub

Mais le code ne fonctionne pas à cause de la fonction Find. Je me demandais également s'il existait un moyen plus simple d'y parvenir.

Merci pour votre aide.

Bonjour,

Tes explications ne sont guère convaincantes...

Hormis quelques rares cas, Find n'est pas approprié.

Fournir un classeur représentatif (c ad avec les feuilles TableA1 et Table2) éventuellement réduites.

et un exemple de résultat au moins partiel parce que dans ton exemple on se demande pourquoi DATE2 t'intéresse et pas DATE3

de plus je ne vois pas en quoi CODEEXISTpeut faciliter quoi que ce soit.

A+

Rechercher des sujets similaires à "reconciliation datas"