Classement automatique selon ordre d'arrivée

Claude1245 Messages postés 13 Date d'inscription dimanche 13 octobre 2013 Statut Membre Dernière intervention 13 octobre 2013 - Modifié par Claude1245 le 13/10/2013 à 16:15
ucfoutu Messages postés 18038 Date d'inscription lundi 7 décembre 2009 Statut Modérateur Dernière intervention 11 avril 2018 - 14 oct. 2013 à 06:35
Bonjour à tous,
Mon soucis est le suivant:
Dans un fichier (Excel 2002) destiné à classer des coureurs à l'arrivée d'une course, j'ai les colonnes A,B,C,D qui contiennent respectivement: nom, prénom, club et numéro de dossard. Dans la colonne E je vais saisir manuellement les dossards de ces concurrents par ordre d'arrivée.

Avec un bouton associé à une macro:
Je voudrais classer automatiquement les colonnes A,B,C,D selon l'ordre d'arrivée des dossards de la colonne E

J'espère que quelqu'un pourra m'aider, car j'avoue être un peu à court d'idée et diverses recherches ne m'ont pas apporté de solution satisfaisante...
Un grand merci par avance!

16 réponses

Claude1245 Messages postés 13 Date d'inscription dimanche 13 octobre 2013 Statut Membre Dernière intervention 13 octobre 2013 7
13 oct. 2013 à 17:13
Si je n'avais pas de difficulté je n'aurais pas demandé de l'aide...
"tu ne sais pas..." "Il te faut apprendre" ...
Si ça t'amuse, ben tant mieux!
Moi j'en suis toujours au même point...
Merci
1
ucfoutu Messages postés 18038 Date d'inscription lundi 7 décembre 2009 Statut Modérateur Dernière intervention 11 avril 2018 211
Modifié par ucfoutu le 13/10/2013 à 17:19
Désolé pour toi, mais si tu ne fais pas cet effort minimum (dont je t'ai de surcroît décrit les gestes) , tu vas rester bien seul.
Et cela ne "m'amuse pas" du tout. C'est un constat que je déplore (pas du tout pareil). Tu es ici sur un forum de développeurs et es donc censé en être un.
0
Claude1245 Messages postés 13 Date d'inscription dimanche 13 octobre 2013 Statut Membre Dernière intervention 13 octobre 2013 7
13 oct. 2013 à 17:25
Et si je te disais que je ne sais pas utiliser l'éditeur de macros, tu serais satisfait?
D'autres prennent la peine de prendre connaissance du problème et essaient d'y apporter leur aide...
Toi tu as choisi de me laisser dans mon jus, c'est ton droit.
Mais je déplore également...
1
ucfoutu Messages postés 18038 Date d'inscription lundi 7 décembre 2009 Statut Modérateur Dernière intervention 11 avril 2018 211
Modifié par ucfoutu le 13/10/2013 à 17:27
"Et si je te disais que je ne sais pas utiliser l'éditeur de macros, tu serais satisfait? "
C'est une plaisanterie ?
J'ai pourtant pris la peine de te dire plus haut comment !!!
Bonne chance (moi, je te laisse là).
0
ucfoutu Messages postés 18038 Date d'inscription lundi 7 décembre 2009 Statut Modérateur Dernière intervention 11 avril 2018 211
13 oct. 2013 à 17:36
Et en plus :
Dans ton aide Excel (pas VBQA, mais bien Excel) :
chercher avec "Créer une macro"
Y choisir "Enregistrer une macro"
Tout y est expliqué très clairement-.
0
Claude1245 Messages postés 13 Date d'inscription dimanche 13 octobre 2013 Statut Membre Dernière intervention 13 octobre 2013 7
13 oct. 2013 à 17:36
Si tu n'as pas compris que je ne sais pas "quels gestes de tri" me sont nécessaires, je pense également qu'il me faut chercher de l'aide ailleurs...
1
Claude1245 Messages postés 13 Date d'inscription dimanche 13 octobre 2013 Statut Membre Dernière intervention 13 octobre 2013 7
13 oct. 2013 à 17:51
On voit bien que tu n'as pas pris la peine de comprendre le problème!
Puisque dans la colonne E se trouvent les même dossards que dans la colonne C mais dans l'ordre d'arrivée des coureurs...
Il ne s'agit donc pas de bêtement trier par la colonne E comme si celle-ci contenait par exemple le temps à côté de chaque coureur.
Mais bien de trouver une solution (code) qui permette de faire l'opération souhaitée, à savoir que les colonnes A,B,C,D s'alignent automatiquement sur les dossards de la colonne E.
Evidemment qu'il faudrait que quelqu'un de bonne volonté me donne ce code ou me mette sur la piste de celui-ci...
Dans l'éditeur de macro je ne sais pas quel type de code écrire!
1

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Claude1245 Messages postés 13 Date d'inscription dimanche 13 octobre 2013 Statut Membre Dernière intervention 13 octobre 2013 7
13 oct. 2013 à 19:16
Je te rappelle, comme je constate que tu n'as toujours rien compris, que la colonne E contient des numéros de dossard et non pas le rang...
Je te répète que je saisis dans la colonne E les dossards dans l'ordre de leur arrivée!!!! En haut le premier, par exemple le dossard 8 puis dessous le second, le dossard 34 etc... Comment faire pour que les données des colonnes A,B,C,D se placent automatiquement à côté du dossard saisi?

Essaye donc aussi de faire un effort et cesse stp de me prendre pour un incapable!
1
ucfoutu Messages postés 18038 Date d'inscription lundi 7 décembre 2009 Statut Modérateur Dernière intervention 11 avril 2018 211
13 oct. 2013 à 19:22
Ouais ...
incompréhensible.

essaye alors d'être très clair et très précis sur ce que tu veux faire.
Si tu as des difficultés à l'exposer, mets donc ici un exemple, sur 3 lignes (cela suffira) de ce que tu as et de ce que tu veux obtenir.
0
ucfoutu Messages postés 18038 Date d'inscription lundi 7 décembre 2009 Statut Modérateur Dernière intervention 11 avril 2018 211
13 oct. 2013 à 19:26
Et surtout : erreur de conception de ton tableau, puisque l'une de ses colonnes (la E) est remplie dans une logique autre que celle des colonnes A à C.
La logique serait de mettre en colonne E les temps et de trier sur la E, tout simplement
0
ucfoutu Messages postés 18038 Date d'inscription lundi 7 décembre 2009 Statut Modérateur Dernière intervention 11 avril 2018 211
13 oct. 2013 à 20:39
Mais si tu persistes à faire comme tu l'as "conçu" ===>> il te faut deux feuilles de données (l'une avec les données des coureurs et l'autre avec leur ordre d'arrivée)
Puis remplir la seconde avec les données (récupérées par Find sur la première) de la première.
Bien plus "relou".
Comme tu le vois : il s'agit là avant tout deconception,
0
Claude1245 Messages postés 13 Date d'inscription dimanche 13 octobre 2013 Statut Membre Dernière intervention 13 octobre 2013 7
13 oct. 2013 à 20:37
Je n'ai jamais parlé de temps, parce que cela m'oblige de les saisir manuellement et c'est précisément ce que je veux éviter.
J'ai pu créer un chrono avec une macro qui m'envoie par mail les temps depuis l'arrivée de la course. Ces temps je les ajouterai une fois le classement réalisé. Une autre personne saisi les dossards dans l'ordre d'arrivée. Avec cette liste de dossards je voudrait mettre ma liste de coureur dans l'ordre d'arrivée. Je ne peux malheureusement pas te joindre le fichier pour que tu comprenne enfin...
1
Claude1245 Messages postés 13 Date d'inscription dimanche 13 octobre 2013 Statut Membre Dernière intervention 13 octobre 2013 7
13 oct. 2013 à 20:47
On va peut-être finir par s'entendre...
C'est possible, que la conception n'est pas bonne mais cela ne me suffit pas! Je n'ai pas la moindre idée comment récupérer par find sur la première feuille...

Alors soit tu me donnes la solution ou alors tu laisses tomber, parce que cela devient agaçant...
1
ucfoutu Messages postés 18038 Date d'inscription lundi 7 décembre 2009 Statut Modérateur Dernière intervention 11 avril 2018 211
13 oct. 2013 à 20:50
Non ! Ce n'est pas la vocation de ce forum de développement.
Viens par contre avec ce que tu tentes (et le code tenté) et on verra alors.
0
jordane45 Messages postés 38144 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 21 avril 2024 344
13 oct. 2013 à 21:13
Bonsoir.
Ucfoutu a raison sur le principe de fonctionnement de ce forum il suffit d'aller lire le règlement du site.
par ailleurs il semble que vous ayez plus en souci d'algorithme
Qu'un problème de programmation...

quoi qu'il en soit Ucfoutu a proposé une bonne idée concernant l'utilisation d'un second tableau. . Le premier etant la base de données.
Il suffirait de parcourir ce deuxième tableau et d'y coller les données du premier tableau correspondant au numéro de dossard.

Il vous faut donc commencer par regarder du côté des boucles...
1
jordane45 Messages postés 38144 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 21 avril 2024 344
13 oct. 2013 à 21:30
Une autre idée serait d'ajouter a votre tableau une colonne contenant une formule "EQUIV" puis de trier sur cette colonne
0
Claude1245 Messages postés 13 Date d'inscription dimanche 13 octobre 2013 Statut Membre Dernière intervention 13 octobre 2013 7
13 oct. 2013 à 21:31
Bonsoir,
Merci pour pour votre réponse.
Les boucles ça me dit effectivement quelque chose, même que je suis novice en la matière... Je vais chercher de ce côté.
Cordialement.
0
Claude1245 Messages postés 13 Date d'inscription dimanche 13 octobre 2013 Statut Membre Dernière intervention 13 octobre 2013 7
13 oct. 2013 à 21:33
Je vais aussi essayer ça..
Merci
0
jordane45 Messages postés 38144 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 21 avril 2024 344
Modifié par jordane45 le 13/10/2013 à 21:44
Cette deuxième solution sera sûrement la plus simple.
Et pas besoin de macro :-)
0
ucfoutu Messages postés 18038 Date d'inscription lundi 7 décembre 2009 Statut Modérateur Dernière intervention 11 avril 2018 211
13 oct. 2013 à 16:31
Bonjour,
Utilise donc l'enregistreur de macros et tu la connaîtras, la syntaxe de ce code !
0
Claude1245 Messages postés 13 Date d'inscription dimanche 13 octobre 2013 Statut Membre Dernière intervention 13 octobre 2013 7
13 oct. 2013 à 16:49
Bonjour,
Cela m'avance pas beaucoup...
J'ai déjà cherché de ce côté là.
0
ucfoutu Messages postés 18038 Date d'inscription lundi 7 décembre 2009 Statut Modérateur Dernière intervention 11 avril 2018 211
Modifié par ucfoutu le 13/10/2013 à 16:53
Ah ?
Et quel code t'a ainsi écrit l'enregistreur de macros ? ===>> montre-nous-le donc .
0
Claude1245 Messages postés 13 Date d'inscription dimanche 13 octobre 2013 Statut Membre Dernière intervention 13 octobre 2013 7
13 oct. 2013 à 16:56
Je n'ai pas trouvé de code!
Je ne sais pas dans quelle direction chercher...
0
ucfoutu Messages postés 18038 Date d'inscription lundi 7 décembre 2009 Statut Modérateur Dernière intervention 11 avril 2018 211
Modifié par ucfoutu le 13/10/2013 à 17:02
On ne dit alors pas :
"Cela m'avance pas beaucoup...
J'ai déjà cherché de ce côté là.
", mais ; "je ne sais pas utiliser l'enregistreur de macros", hein ...
Il te faut alors apprendre (et çà, c'est Excel et son B.A.BA) à utiliser l'enregistreur de macros>.
1) on le lance (Développeur ===>>> Visual Basic ===>>> Macros ===>> enregistrer une macro
2) accomplir les gestes de tri que tu veux
3) arrêter l'enregistreur
4) aller lire le code qu'il a écrit (en éditant la macro qui a été créée par un clic sur "modifier").

________________________
Réponse exacte ? => "REPONSE ACCEPTEE" facilitera les recherches.
Pas d'aide en ligne installée ? => ne comptez pas sur moi pour simplement répéter son contenu. Je n'interviend
0
ucfoutu Messages postés 18038 Date d'inscription lundi 7 décembre 2009 Statut Modérateur Dernière intervention 11 avril 2018 211
Modifié par ucfoutu le 13/10/2013 à 17:40
Ben : Tu tries sur la colonne E !
Ne nous dis pas que tu ne sais pas non plus le faire depuis Excel, manuellement (Données ===>> Trier) ?

Je crains fort que ce que tu appelles dans ces conditions "de l'aide", ne soit purement et simplement rien d'autre que la demande d'écriture d'un code à copier/coller ... sans même le comprendre.

________________________
Réponse exacte ? => "REPONSE ACCEPTEE" facilitera les recherches.
Pas d'aide en ligne installée ? => ne comptez pas sur moi pour simplement répéter son contenu. Je n'interviend
0
ucfoutu Messages postés 18038 Date d'inscription lundi 7 décembre 2009 Statut Modérateur Dernière intervention 11 avril 2018 211
13 oct. 2013 à 18:49
Roooo !
C'est vraiment incroyabe !
Fais-le donc manuellement et regarde le résultat :
Tu sélectionnes toute la plage concernée par ce tri (colonnes A à E incluses) et tu tries sur la colonne E.
Allons allons !
Et cà, ce n'est même pas la connaissance de VBA, juste celle de Excel ...
0
Claude1245 Messages postés 13 Date d'inscription dimanche 13 octobre 2013 Statut Membre Dernière intervention 13 octobre 2013 7
13 oct. 2013 à 21:01
Bref, je n'ai plus de temps à perdre. Sûrement que la vocation de ce forum n'est pas celui que je pensais. Et j'en m'en excuse. J'ai tout de même vu dans d'autre sujets, que des solution précises on été indiquées... Je déplore juste le ton de tes interventions, prendre celui qui demande de l'aide pour un guignol en jouant au "docteur" est en effet assez désagréable surtout que sur la question précise tu ne sembles pas avoir beaucoup plus d'idées que moi.
Excellente soirée.
0
ucfoutu Messages postés 18038 Date d'inscription lundi 7 décembre 2009 Statut Modérateur Dernière intervention 11 avril 2018 211
13 oct. 2013 à 21:03
OK d'ac, donc ...
Je te laisse maintenant là (j'ai de la fièvre et tu l'amplifies).
Je te souhaite tout le succès qui correspond à tes efforts.
0
ucfoutu Messages postés 18038 Date d'inscription lundi 7 décembre 2009 Statut Modérateur Dernière intervention 11 avril 2018 211
Modifié par ucfoutu le 14/10/2013 à 07:03
Voilà comment je vois personnellement la chose :
- une feuille "coureurs" (l'inventaire des coureurs) dont les colonnes A,B,C et D contiennent dans l'ordre : le n° de dossard, le nom, le prénom et le club. Remarquons que l'ai mis le dossard en 1er. Ce n'est pas "au hasard".
- une feuille contenant les résultats de la course, dans l'ordre d'arrivée. Cette feuille elle-même ne doit comporter que 4 colonnes (nom, prénom dossard et club). Ces 4 colonnes pourront y figurer dans l'ordre que l'on veut.
- il ne faut pas demander à l'utilisateur de saisir quoi que ce soit (risques d'erreur) sur la feuille des résultats.
-il faut l'obliger à sélectionner dans une listbox ou une combobox, dans l'ordre d'arrivée et éliminer de la listbox ou combobox un coureur qui y est sélectionné (de sorte à ne pas risquer de le saisir plusieurs fois). Ce qui veut dire que cette listbox ou combobox ne devra pas être liée à la feuille "coureurs", mais alimentée en boucle à partir de la dite feuille.
A chaque sélection dans la listbox ou combobox, reporter tout simplement, en dessous de la dernière ligne remplie, l'article et ses sous-articles sélectionnés.

Attention : prévoir la possibilité de recommencer à zéro (pour le cas où l'utilisateuir se serait trompé dans l'ordre d'arrivée)

Tout cela est facile à mettre en oeuvre (même pas de Find), mais implique la remise en question totale de la conception.
________________________
Réponse exacte ? => "REPONSE ACCEPTEE" facilitera les recherches.
Pas d'aide en ligne installée ? => ne comptez pas sur moi pour simplement répéter son contenu. Je n'interviend
0
Rejoignez-nous