remplir Combobox par ordre décroissant

aeryne

XLDnaute Junior
Bonjour
j'aimerai remplir ma combobox en ordre décroissant puisque j'alimente mon tableau en permanence et ca commence à être long de toujours descendre en bas car je remplis toujours les dernieres propositions.

voici le code qui me sert à alimenter ma combobox:
Code:
With Worksheets("AVP")
        Me.ComboBox29.List() = .Range("D2:D" & .Range("D" & Rows.Count).End(xlUp).Row).Value
    End With

c'est situer dnas le userform initialize

merci de votre aide
 

BOISGONTIER

XLDnaute Barbatruc
Repose en paix
Re : remplir Combobox par ordre décroissant

Bonjour,

CF PJ

Code:
Private Sub UserForm_Initialize()
  Dim temp()
  Set f = Sheets("BD")
  temp = Application.Transpose(f.Range("A2:A" & f.[A65000].End(xlUp).Row))
  Call tri(temp, LBound(temp), UBound(temp))
  Me.ComboBox1.List = temp
End Sub

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

JB
 

Pièces jointes

  • FormTriTableurTrie-1.xls
    44 KB · Affichages: 31
Dernière édition:

Discussions similaires

Statistiques des forums

Discussions
312 276
Messages
2 086 711
Membres
103 377
dernier inscrit
fredy45