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

Tri sur 3 colonnes

  • Initiateur de la discussion Initiateur de la discussion ThierryR
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

T

ThierryR

Guest
Bonjours à tous,

Je viens vous soumettre ces quelques lignes de codes ayant besoin de savoir ce qui ne fonctionne pas. J'aimerais trier une zone dont le nombre de lignes est variable et ceci des critères de tri sur 3 colonnes.
Merci beaucoup d'avance.
ThierryR

'Tri de la liste des immobilisations pour la présentation du tableau

Worksheets("Liste Immobilisations").Activate
Worksheets("Liste Immobilisations").AutoFilter.Sort.SortFields.Clear
Worksheets("Liste Immobilisations").AutoFilter.Sort.SortFields. _
Add Key:=Range("B2:B" & I), SortOn:=xlSortOnValues, Order:=xlAscending, _
DataOption:=xlSortNormal
Worksheets("Liste Immobilisations").AutoFilter.Sort.SortFields. _
Add Key:=Range("E2:E" & I), SortOn:=xlSortOnValues, Order:=xlAscending, _
DataOption:=xlSortNormal
Worksheets("Liste Immobilisations").AutoFilter.Sort.SortFields. _
Add Key:=Range("H2:H" & I), SortOn:=xlSortOnValues, Order:=xlAscending, _
DataOption:=xlSortNormal

With Worksheets("Liste Immobilisations").AutoFilter.Sort
.SetRange Range("A1:Y" & I)
.Header = xlYes
.MatchCase = False
.Orientation = xlTopToBottom
.SortMethod = xlPinYin
.Apply
End With
 
Re : Tri sur 3 colonnes

Bonjour,

La macro fait référence à une variable I à différents endroits

Range("B2:B" & I)
SetRange Range("A1:Y" & I)

etc.....

I restant vide ( ou j'ai raté l'endroit où elle évolue ... :-( )
le range ne doit pas être défini ...

il n'y a pas d'erreur à l'exécution ?
 
Re : Tri sur 3 colonnes

Bonjour à tous,

Effectivement la variable n'est pas valorisée dans ce que j'ai transmis.
Voici donc les lignes complémentaires :

Dim I as Integer

I = Sheets("Liste Immobilisations").Cells(1, 1).End(xlDown).Row

Ces deux sont bien présentes dans mon fichier.

J'ai comme erreur : "Erreur d'exécution 91 : variable objet ou variable bloc With non définie"
Merci pour votre aide.

ThierryR
 
Re : Tri sur 3 colonnes

Re bj,

Le bloc suivant a un pb :

With Worksheets("Liste Immobilisations").AutoFilter.Sort
.SetRange Range("A1:Y" & I)
.Header = xlYes
.MatchCase = False
.Orientation = xlTopToBottom
.SortMethod = xlPinYin
.Apply
End With

la syntaxe de la 1 ere ligne :
dans les exemples excel, il n'y a jamais 2 points consécutifs, enfin je n'ai pas encore vu ... je propose une syntaxe, mais pas sur qu'elle fonctionne ....

With Worksheets("Liste Immobilisations")
.AutoFilter.Sort
.AutoFilter
.Sort
.SetRange Range("A1:Y" & I)
.Header = xlYes
.MatchCase = False
.Orientation = xlTopToBottom
.SortMethod = xlPinYin
.Apply
End With
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD
Assurez vous de marquer un message comme solution pour une meilleure transparence.

Discussions similaires

  • Question Question
XL 2021 listbox
Réponses
18
Affichages
740
Réponses
17
Affichages
1 K
Réponses
4
Affichages
733
Réponses
6
Affichages
1 K
B
  • Question Question
Réponses
2
Affichages
776
Benjy51190
B
Réponses
11
Affichages
969
Réponses
1
Affichages
932
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…