Excel macro tri avec choix de la colonne

[Résolu/Fermé]
Signaler
Messages postés
19
Date d'inscription
samedi 21 novembre 2009
Statut
Membre
Dernière intervention
9 avril 2020
-
Messages postés
918
Date d'inscription
samedi 21 novembre 2009
Statut
Membre
Dernière intervention
20 mars 2013
-
Bonjour,

Je ne suis pas un pro des macros et là je bloque sur une macro qui me serait bien utile dans mon taf.
Je travaille sur des tableaux Excel assez conséquent avec de nombreuses lignes et de nombreuses colonnes.
Afin d'avoir des axes d'analyse différents (taux, valeur, écarts, secteur géo...) je souhaiterais créer une macro qui lorsque je clique sur le bouton (que j'ai crée) me demande de choisir une colonne qui sera celle qui fera l'objet de mon tri.

En fait, il faut qu'une textbox (après avoir cliqué sur mon bouton) apparaisse et que lorsque je saisie la colonne C par exemple, le tri se fasse sur la colonne choisie sur la plage définie (A3:D7 dans mon exemple)

Je mets un fichier pour exemple

excel

Merci pour votre aide

12 réponses

Messages postés
1823
Date d'inscription
vendredi 5 septembre 2008
Statut
Contributeur
Dernière intervention
24 avril 2020
623
Bonjour,

Le fichier exemple n'est pas en lien. Pour le faire utiliser www.cijoint.fr, et nous donner le lien.

Merci
Messages postés
19
Date d'inscription
samedi 21 novembre 2009
Statut
Membre
Dernière intervention
9 avril 2020

Ok merci

Voici le lien

http://www.cijoint.fr/cjlink.php?file=cj200911/cijhilcRCw.xls
Messages postés
918
Date d'inscription
samedi 21 novembre 2009
Statut
Membre
Dernière intervention
20 mars 2013
285
Tu peux faire une UserForm dans laquelle tu mets un RefEdit. Tu récupères la valeur de la plage saisie pour faire ton tri. Je ne sais pas vraiment à quel niveau tu bloques. Peux-tu préciser sur quel point tu as besoin d'aide ?
Messages postés
10500
Date d'inscription
mercredi 11 août 2004
Statut
Contributeur
Dernière intervention
22 octobre 2021
1 219
Bonjour,
C’est une possibilité sans passer par une [UserForm]: https://www.cjoint.com/?lwaeFH5vbn
Messages postés
19
Date d'inscription
samedi 21 novembre 2009
Statut
Membre
Dernière intervention
9 avril 2020

Bonsoir,

A la base, je ne sais pas programmé le VB. J'utilise quelques macros conditionnelles que je trouve sur le net et je sais les adapter et y apporter des petites modifs mais après le refedit et tout le reste je ne sais pas comment les créer et les enchainer dans le VB . Je suis controleur de gestion et la programmation VB n'est pas très facile pour moi.
Pour toi, récupérer la valeur du userform te semble clair et évident, pour moi c'est obsur... Apparement on ne joue pas dans la même cour pour le VB... :-)

En fait, ça serait cool si quelqu'un pouvait m'écrire un petit bout de VB qui correspond à ma demande... Ensuite, j'essaierais de le comprendre et de l'adapter à mes besoins. J'espère que je ne vous désole pas trop...

Merci de votre compréhension.
Messages postés
19
Date d'inscription
samedi 21 novembre 2009
Statut
Membre
Dernière intervention
9 avril 2020

Merci, ça fonctionne
J'étais en train de répondre pendant que tu me donnais la solution
Merci pour votre aide!!!

Bonne soirée
Messages postés
19
Date d'inscription
samedi 21 novembre 2009
Statut
Membre
Dernière intervention
9 avril 2020

En essayant de faire fonctionner la macro sur plus de données, je me suis apperçu que ça serait bien de pouvoir choisir l'ordre de tri ascendant ou descendant...
Auriez-vous une solution?

Merci d'avance
Messages postés
10500
Date d'inscription
mercredi 11 août 2004
Statut
Contributeur
Dernière intervention
22 octobre 2021
1 219
Bonjour,
Parlez-vous de ma proposition ?
Oui s'est possible, mais pas avant demain !
Merci de votre réponse.
Bon dimanche.
Messages postés
918
Date d'inscription
samedi 21 novembre 2009
Statut
Membre
Dernière intervention
20 mars 2013
285
Pour info, l'Userform est une fenêtre personnalisée dans laquelle tu peux insérer des cases à cocher, des options, des champs que l'utilisateur peut remplir, ... le RefEdit est un champ qui te permet de sélectionner une plage de cellules de la même manière qu'on définit les données sources d'un graphique par exemple.

Pour ce qui est de ta question d'origine, j'ai repris le fichier de Le Pingou et j'ai ajouté le sens du tri.
http://www.cijoint.fr/cjlink.php?file=cj200911/cijNE6tuK9.xls

Pour Le Pingou, de manière générale, il vaut mieux fermer les blocs If ou autre par un End If, ne serait-ce que pour la lisibilité du code.
Messages postés
10500
Date d'inscription
mercredi 11 août 2004
Statut
Contributeur
Dernière intervention
22 octobre 2021
1 219
Bonjour Gord21,
Désolé si vous avez de la peine avec les diverses manière d'écriture de [If .. then .. end if].
Dans mon cas le End if n'est vraiment pas utile.
Messages postés
918
Date d'inscription
samedi 21 novembre 2009
Statut
Membre
Dernière intervention
20 mars 2013
285 >
Messages postés
10500
Date d'inscription
mercredi 11 août 2004
Statut
Contributeur
Dernière intervention
22 octobre 2021

Bonjour Le Pingou,
Effectivement, la forme d'écriture sans End If est correcte mais je trouve simplement la forme avec fermeture des blocs plus explicite pour les débutants ou ceux qui sont plus familiers avec d'autres langages de programmation.
Il s'agissait juste d'une petite remarque :-)
Bonne soirée
Messages postés
19
Date d'inscription
samedi 21 novembre 2009
Statut
Membre
Dernière intervention
9 avril 2020

ça marche bien
c'est nickel.
Merci beaucoup!!
Bonsoir à vous tous.

Je suis admiratif devant une telle efficacité.
Pour ma part, j'ai besoin de trier 6 colonnes ; j'ai essayé d'éditer les lignes de commandes et de mettre A:F au lieu de A:D, mais cela ne marche pas. Est-ce difficile d'y arriver ?
Merci !

JL
Messages postés
918
Date d'inscription
samedi 21 novembre 2009
Statut
Membre
Dernière intervention
20 mars 2013
285
Bonsoir,

Tu dois éditer le code dans la macro (Outils/Macros.../Visual Basic Editor) et non dans la zone texte qui est sur la feuille et que tu peux effacer. Par contre, pense à modifier l'adresse des cellules qui correspondent aux listes de choix.

>
Messages postés
918
Date d'inscription
samedi 21 novembre 2009
Statut
Membre
Dernière intervention
20 mars 2013

Merci pour la réponse !

Mais c'était ce que j'avais fait, dans visual.
Par contre, je ne vois pas bien ce que veut dire "modifier l'adresse des cellules" Sont-ce les réf $I$1 ?

Cordialement,
JL
Messages postés
918
Date d'inscription
samedi 21 novembre 2009
Statut
Membre
Dernière intervention
20 mars 2013
285 > jlkas
Oui, ce sont les cellules dans lequelles il y a les listes de choix
Messages postés
10500
Date d'inscription
mercredi 11 août 2004
Statut
Contributeur
Dernière intervention
22 octobre 2021
1 219
Bonjour,
Se poste est résolu ... !
Je veux bien donner un oeil, mettre votre fichier sur https://www.cjoint.com/ et poster le lien !