Sous excell trier un tableau avec une macro

Résolu/Fermé
Pat de Yoff - 3 sept. 2011 à 19:38
 pat de yoff - 3 sept. 2011 à 23:06


Bonjour,
Sous excell 2003, J'ai créé une macro et un bouton pour trier un tableau (par les noms et prénoms) des 23 premiers adhérents d'une section de sport:
Ce tri via la macro s'effectue pour l'instant de "A4 à AD26" sur les colonnes nom et prénom.

Si j'insère par exemple 5 nouveaux adhérents, le tri via la macro se fait toujours de
"A4 à AD26".
Que dois je faire pour que ma macro fasse le tri avec ces nouvelles lignes (dans ce cas de "A4 à AD31").

Merci de votre aide

Sub trier_par_nom_par_prénom()
'
' trier_par_nom_par_prénom Macro
' Macro enregistrée le 03/09/2011 par PC
'

'
Range("A4:AD26").Select
Selection.Sort Key1:=Range("C4"), Order1:=xlAscending, Key2:=Range("D4") _
, Order2:=xlAscending, Header:=xlGuess, OrderCustom:=1, MatchCase:= _
False, Orientation:=xlTopToBottom, DataOption1:=xlSortNormal, DataOption2 _
:=xlSortNormal
Range("A4").Select
End Sub
A voir également:

2 réponses

Mytå Messages postés 2973 Date d'inscription mardi 20 janvier 2009 Statut Contributeur Dernière intervention 20 décembre 2016 949
Modifié par Mytå le 3/09/2011 à 19:44
Salut le forum

Essaye ceci
Range("A4").CurrentRegion.Sort _
    Key1:=Range("C4"), Order1:=xlAscending, _
    Key2:=Range("D4"), Order2:=xlAscending, _
    Header:=xlGuess, OrderCustom:=1, _
    MatchCase:=False, Orientation:=xlTopToBottom, _
    DataOption1:=xlSortNormal, DataOption2:=xlSortNormal

Mytå
Quelle prétention de prétendre que l'informatique est récente
Adam et Eve avaient déjà un Apple ! [MsProject 2003(FR), Excel 2003-2007(FR)]
0
cela ne fonctionne pas!
J'ai résolu mon problème en remplaçant la cellule "AD26" par "une cellule "AD 250" comme je n'aurais jamais 246 adhérents je suis tranquille et la selection tri fonctionne.
Range("A4:AD250").Select
Selection.Sort Key1:=Range("C4"), Order1:=xlAscending, Key2:=Range("D4") _
, Order2:=xlAscending, Header:=xlGuess, OrderCustom:=1, MatchCase:= _
False, Orientation:=xlTopToBottom, DataOption1:=xlSortNormal, DataOption2 _
:=xlSortNormal
Range("A4").Select
End Sub.

Mais pour ma gouverne perso, je ne saurais jamais faire une macro qui sélectionne un tableau complet avec un nombre de colonne fixe mais avec des lignes qui varient en nombre dans le temps!!
Merci quand même de vous être penché sur mon cas.
Amicalement.
pat
0
J'ai fait un copier coller en lieu et place de la macro et cela ne fonctionne pas!!!!
Comme je n'y connais pas grand chose je dois faire une erreur qq part.
Amicalement
0