vba tri inversé

Le
j-pascal
Bonjour,

Dans ce qui suit, je suis "obligé" de passer par un tri décroissant
puis croissant afin d'éviter que les cellules vides ne se retrouvent en
haut de ma liste. Ca fonctionne, mais c'est "un peu" lourd !!

'
If [j2] <> "Trié" Then 'col C = origine
Range([c2], [c65536].End(xlUp)).Sort Key1:=[c2],
Order1:=xlAscending
End If

If [c2] = 0 Then
Range([c2], [c65536].End(xlUp)).Sort Key1:=[c2],
Order1:=xlDescending
Range([c2], [c65536].End(xlUp)).Sort Key1:=[c2],
Order1:=xlAscending
[c2].End(xlDown).Offset(1, 0).Select
End If
'


Merci pour vos lumières,

JP
Vidéos High-Tech et Jeu Vidéo
Téléchargements
Vos réponses
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
Daniel.C
Le #17994671
Si les cellules sont vides, la ligne :
Range([c2], [c65536].End(xlUp)).Sort Key1:=[c2], Order1:=xlAscending
suffit.
Daniel


Bonjour,

Dans ce qui suit, je suis "obligé" de passer par un tri décroissant puis
croissant afin d'éviter que les cellules vides ne se retrouvent en haut de ma
liste. Ca fonctionne, mais c'est "un peu" lourd !!

'---
If [j2] <> "Trié" Then 'col C = origine
Range([c2], [c65536].End(xlUp)).Sort Key1:=[c2], Order1:=xlAscending
End If

If [c2] = 0 Then
Range([c2], [c65536].End(xlUp)).Sort Key1:=[c2], Order1:=xlDescending
Range([c2], [c65536].End(xlUp)).Sort Key1:=[c2], Order1:=xlAscending
[c2].End(xlDown).Offset(1, 0).Select
End If
'---


Merci pour vos lumières,

JP


j-pascal
Le #17995931
Bonjour Daniel,

Ben oui, apparemment ça fonctionne ! Pourtant à un moment je me suis
retrouvé avec toutes les lignes vides en début de liste, puis les
valeurs en ordre alphabétique ; Merci !

JP

Si les cellules sont vides, la ligne :
Range([c2], [c65536].End(xlUp)).Sort Key1:=[c2], Order1:=xlAscending
suffit.
Daniel


Bonjour,

Dans ce qui suit, je suis "obligé" de passer par un tri décroissant puis
croissant afin d'éviter que les cellules vides ne se retrouvent en haut de
ma liste. Ca fonctionne, mais c'est "un peu" lourd !!

'---
If [j2] <> "Trié" Then 'col C = origine
Range([c2], [c65536].End(xlUp)).Sort Key1:=[c2],
Order1:=xlAscending
End If

If [c2] = 0 Then
Range([c2], [c65536].End(xlUp)).Sort Key1:=[c2],
Order1:=xlDescending
Range([c2], [c65536].End(xlUp)).Sort Key1:=[c2],
Order1:=xlAscending
[c2].End(xlDown).Offset(1, 0).Select
End If
'---


Merci pour vos lumières,

JP




Publicité
Poster une réponse
Anonyme