Trier un tableau excel

Fermé
mchotard Messages postés 415 Date d'inscription vendredi 6 mai 2011 Statut Membre Dernière intervention 18 mars 2024 - 6 août 2017 à 14:52
mchotard Messages postés 415 Date d'inscription vendredi 6 mai 2011 Statut Membre Dernière intervention 18 mars 2024 - 7 août 2017 à 08:17
Bonjour,

J'ai actuellement un tableau (a1:f50).Avec une macro, je voudrais faire un tri sur la colonne "D". Pas de souci pour le moment, sauf que si je rajoute des lignes, la macro n'est plus complète car les ligne après 50 ne sont plus prises en compte. Voici ma macro
Range("A1:F50").Select
ActiveWorkbook.Worksheets("Feuil1").Sort.SortFields.Clear
ActiveWorkbook.Worksheets("Feuil1").Sort.SortFields.Add Key:=Range("D2:D50") _
, SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:=xlSortNormal
With ActiveWorkbook.Worksheets("Feuil1").Sort
.SetRange Range("A1:F50")
.Header = xlYes
.MatchCase = False
.Orientation = xlTopToBottom
.SortMethod = xlPinYin
.Apply
End With
End Sub
Merci de m'aider SVP

A voir également:

4 réponses

via55 Messages postés 14405 Date d'inscription mercredi 16 janvier 2013 Statut Membre Dernière intervention 25 avril 2024 2 703
6 août 2017 à 15:30
Bonjour

En debut de macro tu rajoutes ces lignes
Dim Ligne As Long
Ligne = Columns(1).Find("*", , , , xlByColumns, xlPrevious).Row

Ligne va donner le n° de la dernière ligne remplie en colonne A

Ensuite pour chaque instruction de Range de ta macro tu l'écris comme suit :
Range("A1:F" & Ligne)

Cdlmnt
Via
0
mchotard Messages postés 415 Date d'inscription vendredi 6 mai 2011 Statut Membre Dernière intervention 18 mars 2024 38
6 août 2017 à 17:47
merci Via
Deux questions?
Le tri se fait bien sur ma colonnes F, Que dois-je faire si pour trier sur la colonne D par exemple.
Enfin ma macro bug sur : .apply, pourquoi?
merci à nouveau pour ton concours qui me dépanne beaucoup.
Cdlt
0
via55 Messages postés 14405 Date d'inscription mercredi 16 janvier 2013 Statut Membre Dernière intervention 25 avril 2024 2 703
6 août 2017 à 18:17
Re

C'est cette ligne de macro qui trie et elle trie sur D !! pas sur F
ActiveWorkbook.Worksheets("Feuil1").Sort.SortFields.Add Key:=Range("D2:D50") _
, SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:=xlSortNormal

Je ne peut deviner le bug, il faut poster un exemple de ton fichier sur mon partage.fr; faire créer un lien, le copier et revenir le coller ici

Cdlmnt
Via

0
mchotard Messages postés 415 Date d'inscription vendredi 6 mai 2011 Statut Membre Dernière intervention 18 mars 2024 38
7 août 2017 à 08:17
merci pour ton aide, cela m'aide beaucoup. Bonne semaine
0