Bonjour,
La macro marche bien, malgré que lorsque j'ai un doublon dans ma clé, la cellule correspondante ne se remplit que une fois... Mais ça devrait le faire
Je ne peux pas insérer de photo via un hebergeur d'image, mais si sur le fichier exemple transmis, j'ai 2 fois la clé 1, puis 3 fois la clé 2 et bien il n'y a que une cellule qui se remplie.
Cependant tu peux m'expliquer un peu le code stp?
Je trouve ça "bête" de l'utiliser sans trop comprendre la réflexion derrière :/
Je comprends bien cette partie du code (ce qu'elle fait, pourquoi, où sont les fin etc...) et c'est ce que je voulais faire sans savoir comment le réaliser
Do
If res(ptrwb, 1) = sap(ptrsap, 1) Then
res(ptrwb, 2) = sap(ptrsap, 11)
res(ptrwb, 3) = sap(ptrsap, 12)
res(ptrwb, 4) = sap(ptrsap, 15)
If ptrsap < dlwssap Then ptrsap = ptrsap + 1 Else fin = True
If ptrwb < dlws Then ptrwb = ptrwb + 1 Else fin = True
ElseIf res(ptrwb, 1) < sap(ptrsap, 1) Then
If ptrwb < dlws Then ptrwb = ptrwb + 1 Else fin = True
Else
If ptrsap < dlwssap Then ptrsap = ptrsap + 1 Else fin = True
End If
Loop Until fin
wswb.Cells(1, 1).Resize(dlws, 4) = res
Par contre la première partie est un peu plus floue
Set wswb = Sheets("WB")
Set wssap = Sheets("SAP")
dlws = wswb.Cells(Rows.Count, 1).End(xlUp).Row
dlwssap = wssap.Cells(Rows.Count, 1).End(xlUp).Row
wswb.Cells(2, 1).Resize(dlws - 1, 1).Sort key1:=wswb.Cells(1, 1), order1:=xlAscending, Header:=xlYes
wssap.Cells(1, 1).Resize(dlwssap, 15).Sort key1:=wssap.Cells(1, 1), order1:=xlAscending, Header:=xlYes
res = wswb.Cells(1, 1).Resize(dlws, 4)
sap = wssap.Cells(1, 1).Resize(dlwssap, 15)
ptrwb = 3
ptrsap = 2
fin = False
Merci d'avance