B
bobjean
Guest
Voila j ai créer un bouton de commande mais j'aimerai que se bouton permette d activer ceci:
Admettons que j'appel le bouton "actualiser", j'aimerai que le tri ne se fasse que lorsque j'appuye sur le bouton, et qu'une fois le tri fini, il ne reprenne pas sans avoir appuyer sur le bouton à nouveau
Code:
Function SansDoublonsTrié(champ As Range)
Set MonDico = CreateObject("Scripting.Dictionary")
temp = champ
For i = 1 To UBound(temp, 1)
If Not MonDico.Exists(temp(i, 1)) And temp(i, 1) <> 0 Then
MonDico.Add temp(i, 1), temp(i, 1)
End If
Next i
a = MonDico.items
j = UBound(a)
Call tri(a, 0, j)
SansDoublonsTrié = Application.Transpose(a)
End Function
Sub tri(a, gauc, droi) ' Quick sort
ref = a((gauc + droi) \ 2)
g = gauc: d = droi
Do
Do While a(g) < ref: g = g + 1: Loop
Do While ref < a(d): d = d - 1: Loop
If g <= d Then
temp = a(g): a(g) = a(d): a(d) = temp
g = g + 1: d = d - 1
End If
Loop While g <= d
If g < droi Then Call tri(a, g, droi)
If gauc < d Then Call tri(a, gauc, d)
End Sub
Admettons que j'appel le bouton "actualiser", j'aimerai que le tri ne se fasse que lorsque j'appuye sur le bouton, et qu'une fois le tri fini, il ne reprenne pas sans avoir appuyer sur le bouton à nouveau