1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
   | Sub test()
dim dico as object,plage as range,cel as range,tablo,i&
Set dico = CreateObject("scripting.dictionary")
    Set plage = Range("A1:A" & Cells(Rows.Count, 1).End(xlUp).Row)
 
    For Each cel In plage.Cells
        If Not dico.exists(cel.Value) Then dico.Add (cel.Value), cel.Offset(0, 1)
        If dico(cel.Value) <> "Boom" Then dico(cel.Value) = cel.Offset(0, 1) Else dico(cel.Value) = dico(cel.Value)
    Next
 
    tablo = plage.Resize(plage.Rows.Count, 2).Value
 
    For i = 1 To UBound(tablo)
        tablo(i, 2) = dico(tablo(i, 1))
    Next
 
    Cells(1, 4).Resize(UBound(tablo), UBound(tablo, 2)) = tablo
End Sub | 
Partager