Adapter une macro (tri) en fonction du contenu d'une liste déroulante

Nougatine95

XLDnaute Occasionnel
Bonjour le Forum,

Merci d'avoir cliqué sur cette discussion.
Peut-être saurez-vous m'aider?

Fichier joint.

Comment adapter cette macro (tri) en fonction du contenu d'une liste déroulante?

Sub Macro1()
Range("$A$4:$I$12").Select
Selection.Sort Key1:=Range("A5"), Order1:=xlAscending, Header:=xlGuess, _
OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom
End Sub

En vous remerciant,
Elisabeth.
 

Pièces jointes

  • Macro_Tri_Liste_Deroulante.xls
    32.5 KB · Affichages: 37
  • Macro_Tri_Liste_Deroulante.xls
    32.5 KB · Affichages: 43
  • Macro_Tri_Liste_Deroulante.xls
    32.5 KB · Affichages: 40

Dranreb

XLDnaute Barbatruc
Re : Adapter une macro (tri) en fonction du contenu d'une liste déroulante

Bonjour.
Il faut se débrouiller pour remplacer Range("A5") par une cellule de la colonne de rang dépendant de la valeur de la liste déroulante.
Mais franchement, ce serait à la fois plus simple à programmer et plus pratique à utiliser d'effectuer le tri dès qu'on sélectionne un titre ! Parce qu'alors ce serait simplement la cellule Target de la Sub Worksheet_SelectionChange

Salut Pierre-Jean.

Je mets quand même mon code au cas où…
VB:
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Target.Count <> 1 Then Exit Sub
If Intersect(Me.[A4:D4], Target) Is Nothing Then Exit Sub
Me.Range(Me.[I5], Me.[A65536].End(xlUp)).Sort Key1:=Target, Order1:=xlAscending, Header:=xlNo, _
   OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom
End Sub
 
Dernière édition:

pierrejean

XLDnaute Barbatruc
Re : Adapter une macro (tri) en fonction du contenu d'une liste déroulante

Bonjour Nougatine95

Vois si cela te convient

Edit : Salut Dranreb
 

Pièces jointes

  • Macro_Tri_Liste_Deroulante.xls
    46 KB · Affichages: 31
  • Macro_Tri_Liste_Deroulante.xls
    46 KB · Affichages: 39
  • Macro_Tri_Liste_Deroulante.xls
    46 KB · Affichages: 41

Nougatine95

XLDnaute Occasionnel
Re : Adapter une macro (tri) en fonction du contenu d'une liste déroulante

Mais franchement, ce serait à la fois plus simple à programmer et plus pratique à utiliser d'effectuer le tri dès qu'on sélectionne un titre ! Parce qu'alors ce serait simplement la cellule Target de la Sub Worksheet_SelectionChange

Merci beaucoup Dranreb,
En effet, ce serait plus simple, bien que je ne sois pas capable actuellement de "programmer" tel que tu l'indiques. :))
Si j'étais seule à l'utiliser ce serait OK, mais là je cherche à faire simple sans avoir à expliquer...
Je pense que pour les utilisateurs qui ne connaissent pas Excel, ils comprendront qu'ils ont un choix avec le menu déroulant.
 

Nougatine95

XLDnaute Occasionnel
Re : Adapter une macro (tri) en fonction du contenu d'une liste déroulante

Merci pierrejean

J'ai consulté la macro que tu as saisie:

Sub Macro1()
x = Range("B3")
Range("A4:I12").Select
Selection.Sort Key1:=Cells(5, x), Order1:=xlAscending, Header:=xlGuess, _
OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom
End Sub

Résultat: Ce que je recherchais.

Merci merci merci pierrejean!
 

Discussions similaires

Statistiques des forums

Discussions
312 203
Messages
2 086 191
Membres
103 152
dernier inscrit
Karibu