[SIZE=2][COLOR=GRAY][B][I]DANS UN MODULE DE CODE STANDARD[/I][/B][/COLOR]
[COLOR=NAVY]Function[/COLOR] EpureDoublon(R [COLOR=NAVY]As[/COLOR] Range) [COLOR=NAVY]As String[/COLOR]
[COLOR=GREEN]'myDearFriend! - www.mdf-xlpages.com[/COLOR]
[COLOR=NAVY]Dim[/COLOR] Dbl [COLOR=NAVY]As New[/COLOR] Collection
[COLOR=NAVY]Dim[/COLOR] TabTemp [COLOR=NAVY]As Variant
Dim[/COLOR] L [COLOR=NAVY]As Byte[/COLOR], N [COLOR=NAVY]As Byte[/COLOR]
[COLOR=GREEN]'Crée un tableau de mots (séparateur "-")[/COLOR]
TabTemp = Split(R.Text, "-")
[COLOR=GREEN]'Reconstitue la chaine en extrayant les mots doublons[/COLOR]
[COLOR=NAVY]For[/COLOR] L = 0 [COLOR=NAVY]To UBound[/COLOR](TabTemp, 1)
N = Dbl.Count
[COLOR=NAVY]On Error Resume Next[/COLOR]
Dbl.Add TabTemp(L), [COLOR=NAVY]CStr[/COLOR](TabTemp(L))
[COLOR=NAVY]On Error GoTo[/COLOR] 0
[COLOR=NAVY]If[/COLOR] Dbl.Count > N [COLOR=NAVY]Then[/COLOR] [COLOR=GREEN]'Si pas de doublon alors alimente la chaine résultat[/COLOR]
EpureDoublon = EpureDoublon & IIf(EpureDoublon <> "", "-", "") & TabTemp(L)
[COLOR=NAVY]End If
Next[/COLOR] L
[COLOR=NAVY]End Function[/COLOR][/SIZE]