Macro de tri (erreur dans mon dernier message !)

Flora

XLDnaute Nouveau
Toutes mes excuses, je ne comprends pas pourquoi, mais, quand j'enregistre la macro que je souhaite répéter ensuite, ça marche à l'enregistrement, mais, ensuite, la macro ne fonctionne plus, les cellules sélectionées et triées ne sont plus les bonnes...

Je voulais, donc... enregistrer une macro qui me permette de trier une portion de colonne, à partir de la cellule active jusqu'à la dernière cellule non vide, en utilisant, lors de l'enregistrement, les touches Cap et Ctrl pour sélectionner une fois jusqu'en bas de la feuille, puis je remonte pour être sûre de choper toutes les cellules remplies... (Bon, c'est sûrement artisanal, mais, quand je le fais, ça marche ! Hélas, quand je veux répéter en passant par la macro enregistrée, ça ne marche plus...)

Voici la macro qui s'affiche dans VisualBasic après tri réussi dans la feuille Excel :

Sub Trier_colonne_à_partir_cellule_active_jusqu_à_fin_saisie()
'
' Trier_colonne_à_partir_cellule_active_jusqu_à_fin_saisie Macro
' Macro enregistrée le 15/04/2007 par Flora
'

'
Range(Selection, Selection.End(xlDown)).Select
Range(Selection, Selection.End(xlDown)).Select
Range(Selection, Selection.End(xlUp)).Select
ActiveWindow.SmallScroll Down:=-5
Selection.Sort Key1:=Range("N11"), Order1:=xlAscending, Header:=xlNo, _
OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom
End Sub

Problème : ça ne fonctionne pas une seconde fois, si j'utilise cette macro, même si je resélectionne la même cellule de départ (N11), je n'y comprends rien, mais... suis totalement inapte à comprendre VisualBasic... Je vois bien qu'il y a des références fixes, mais ne sais comment les transformer en références variables... (???)

Pouvez-vous éclairer la lanterne de l'ignorante que je suis ???

Merci mille fois !!!

Flora
 

Pierrot93

XLDnaute Barbatruc
Re : Macro de tri (erreur dans mon dernier message !)

Re,

as tu lus ma réponse à ton précédent message.

Attention il est déconseillé de multiplier les posts pour une même question, les contributeurs qui peuvent t'aider ne suiront pas forcement tous tes messages..

sinon quelle plage de cellules veux tu trier ?

bonne journée
@+
 

Flora

XLDnaute Nouveau
Re : Macro de tri (erreur dans mon dernier message !)

OUi, pardon pour le doublon, c'était bête :)
Bon, voici exactement ce que je veux faire : je saisis plusieurs listes de mots, une par colonne, mais qui ne démarrent presque jamais en haut de la page et pas toutes sur la même ligne non plus ; par exemple, la liste A commence en N11 et se termine actuellement en N28, la liste B commence en O15 et se termine actuellement en O48, etc. Comme ce sont des listes que j'alimente régulièrement et qui me servent de listes d'insertion dans d'autres feuilles, je dois les trier chaque fois que je les enrichis de mots nouveaux, et le faire chaque fois manuellement me fait perdre beaucoup de temps : j'essaie donc de me concocter une macro unique avec laquelle je pourrais trier chaque liste : il me suffirait de positionne auparavant le curseur sur la cellule de départ de la liste à trier pour que la macro trie ce qui est au-dessous...

POUR CE FAIRE, j'ai :
1/ sélectionné la première cellule de la liste A (N11) (devenant donc la cellule active ???)
2/ PUIS déclenché l'enregistrement de la macro,
3/appuyé sur Ctrl + Majuscules + flèche vers le bas DEUX fois, pour sélectionner toute la colonne jusqu'au bas de la page, puis flèche vers le haut UNE fois, ce qui me permet de m'assurer (presque) que toutes les cellules contenant un mot sont bien dans la sélection, même s'il reste par erreur une cellule vide entre la première et la dernière... (tant pis s'il en reste plusieurs !)
4/ PUIS : je vais dans Données, Trier, je coche "Conserver la sélection en cours", je demande : "Trier par ordre croissant", je décoche la ligne de titre, et...
5/ clique sur OK : mes cellules se trouvent ainsi correctement triées, lorsque je le fais MANUELLEMENT.

Voici la macro telle qu'enregistrée, je mets en bleu les deux expressions qui semblent poser problème :

Trier_colonne_à_partir_cellule_active_jusqu_à_fin_saisie Macro
' Macro enregistrée le 15/04/2007 par Flora
'
Range(Selection, Selection.End(xlDown)).Select
Range(Selection, Selection.End(xlDown)).Select
Range(Selection, Selection.End(xlUp)).Select
Selection.Sort Key1:=Range("N11"), Order1:=xlAscending, Header:=x1No, _
OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom
End Sub​

Mais, lorsque j'essaie de me resservir de la macro ainsi enregistrée pour trier la colonne d'à côté, ça ne marche pas, bien sûr !

Apparemment, DEUX problèmes... pour qui peut m'aider :)

1/ Il faudrait, je suppose, que je puisse remplacer la cellule de départ du tri (ici, "N11") par l'expression "ActiveCell", mais... je ne parviens pas à le formuler de manière compréhensible pour VisualBasic...

2/ Actuellement, bien que je sélectionne manuellement la cellule de départ ("N11", ici), une fois enregistrée, la macro remonte pour le tri à la première cellule de la colonne (je suppose que c'est à cause de : Header:=x1No). Si, ici, je mets "11" à la place de "1", ça colle, pour ma colonne test, qui démarre effectivement en N11. Mais là aussi, il faudrait que ça puisse varier en fonction de la première cellule de la liste.
Il faudrait donc que je puisse indiquer ici, à la place du "1", la ligne de la cellule active, point de départ du tri...

Ouf !!! J'espère que ça n'est pas trop embrouillé, et... si quelqu'un peut me dire comment faire...

MERCI !!!
Flora
 

pierrejean

XLDnaute Barbatruc
Re : Macro de tri (erreur dans mon dernier message !)

bonjour Flora

Veux-tu tester s'il te plait

Code:
Sub Trier_colonne_à_partir_cellule_active_jusqu_à_fin_saisie()
    Range(ActiveCell, Cells(65536, ActiveCell.Column).End(xlUp)).Select
    Selection.Sort Key1:=ActiveCell, Order1:=xlAscending, Header:=xlNo, _
        OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom
End Sub
 

CMoa

XLDnaute Occasionnel
Re : Macro de tri (erreur dans mon dernier message !)

Bonjour Flora;Pierrot93;pierrejean
Voici ce que j'avais préparé.
Bon dimanche à tous
 

Pièces jointes

  • tri.xls
    22 KB · Affichages: 97
  • tri.xls
    22 KB · Affichages: 96
  • tri.xls
    22 KB · Affichages: 91

Flora

XLDnaute Nouveau
Re : Macro de tri - Mes excuses pour Pierrot93 et PierreJean

Mille excuses, j'ai vu vos réponses mais voulais les tester avant de vous remercier, seulement... la semaine a été plus que chargée, je n'ai toujours pas eu le temps de revenir à ce problème : merci tout de même pour ces réponses, dès que je peux, je teste et vous tiens au courant !!!

Bon 1er Mai, avec ou sans pont :)

Flora
 

Discussions similaires

Réponses
4
Affichages
563

Statistiques des forums

Discussions
312 493
Messages
2 088 944
Membres
103 989
dernier inscrit
jralonso