Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

Tri par ordre croissant en VBA

loiclass

XLDnaute Occasionnel
Bonjour,
Comment fait on pour faire un tri par ordre croissant?
Les valeurs à trier sont des dates.
Merci d'avance.
 

camarchepas

XLDnaute Barbatruc
Re : Tri par ordre croissant en VBA

Bonjour ,

Date à trier en colonne D, retour de tri en colonne E

Code:
Sub Tri()
Dim LigneMax As Long, Tourne As Long
Dim Dates() As Variant, Tempo As String
Dim Encore As Boolean
LigneMax = Range("D" & Rows.Count).End(xlUp).Row
Dates = Range("D1:d" & LigneMax).Value
Do
Encore = False
For Tourne = 1 To LigneMax - 1
If DateDiff("d", Dates(Tourne, 1), Dates(Tourne + 1, 1)) < 0 Then
  Tempo = Dates(Tourne, 1)
  Dates(Tourne, 1) = Dates(Tourne + 1, 1)
  Dates(Tourne + 1, 1) = Tempo
  Encore = True
End If
Next
Loop Until Not Encore
Range("E1:E" & LigneMax) = Dates
End Sub
 
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…