Est-il possible d'automatiser le tri d'une feuille de calcul ?

Je souhaite pouvoir automatiser le tri de la feuille, étant donné que je connais le nombre de colonnes toujours fixé à 5 (nombre, essence, diamètre, hauteur, qualité) mais que le nombre de ligne est variable.

De plus j’aimerais que une fois ce tri terminé, qu’on puisse toujours automatiquement, remettre les données en les classant en fonction des colonnes dans un ou plusieurs autres tableaux.

J’ai essayé de faire une macro mais pour l’instant ça n’a pas fonctionné et les fonctions si ne marche pas non plus.

Avec une recherchev j’obtiens le bon résultat mais il ne passe jamais aux lignes suivantes.

Pour expliquer plus en détail ce que je recherche je peux vous appeler ou alors plus détailler cette question.

Bonne journée.

Bonjour

Le tri par macro, déterminer le nombre de ligne, copier (ou filtrer) les données dans un autre tableau, sont des actions réalisables par macro.

La page Macros de notre wiki regroupe l’essentiel des ressources disponibles pour apprendre ou réutiliser des exemples. En l’occurrence je te conseille le document d’'Andrew D Pitonyak qui comprend des exemples pour tout cela…

Cordialement

Est on obligé d’écrire les macros à la main comme renseigné dans le document ou peut-on le faire faire par libreoffice ?

L’enregistrement de macro sera sans doute insuffisant pour toutes ces tâches…

Bonsoir,

Il est possible de faire des tris automatiques sur une variable, deux variables ou plus uniquement par formule.
Le cœur de la solution passe par la fonction NB.SI() qui compare la valeur en cours avec toutes les autres valeurs, en fonction de chaque comparaison, NB.SI() cumule des points ou non pour la valeur en cours. Ainsi chaque valeur va avoir un score de classement, score ordonné par PETITE.VALEUR(). L’autre astuce consiste à faire suivre, dans le score, le n° de la ligne de la valeur initiale, grâce à la fonction LIGNE(). Comment avoir deux valeurs en une ? Il suffit de loger le n°de ligne dans la partie décimale du score, en divisant par 10 000 (par exemple) et en l’additionnant au score.
L’extraction de ce n°de ligne se fera par (Valeur - ENT(Valeur))*10 000. Comme la précision d’un tableur est plutôt conçue pour un usage bancaire, il arrive que cette opération ne permette pas de retrouver exactement le nombre entier initial (à 10^-9 près, par exemple). La fonction ARRONDI()permet d’arranger cela.

Lorsqu’il s’agit de trier en cascade sur plusieurs variables, il suffit de les concaténer (en prenant quelques précautions de formatage pour les valeurs numériques) et d’appliquer la méthode précédente.

Cette technique fait appel à de nombreuses colonnes intermédiaires, qu’on pourrait réduire en allongeant les formules, ce qui n’arrangerait rien, que ce soit pour la pédagogie ou pour la maintenance. Ces colonnes peuvent se masquer, voire être mises sur une feuille masquée à part. Chaque tri se fait immédiatement, sans avoir à mettre à jour.

Voir l’exemple Tri.ods. Les plages Nombre, Essence, Diamètre, Hauteur et Qualité ont été nommées, mais ce n’est nullement obligatoire. Il faudrait juste ne pas oublier de les étendre en fonction du nombre d’entrées…

Cordialement,

D’accord je vais essayer toutes ces méthodes, comment puis-je vous joindre mon document pour que vous puissiez, au cas ou, trouver une autre méthode ?

merci d’avance

Essaie et précise tes difficultés le cas échéant. Je ne vais pas faire le travail à ta place…
Cordialement,

je ne pensais pas à faire le travail à ma place mais que je vous montre ce que j’ai au départ et ce que je veux obtenir