[Résolu par CISCO] Pour CISCO connaissant mon fichier liste déroulante

bellenm

XLDnaute Impliqué
Bonsoir Cisco,

Dans la feuille "DONNEES LIS" saurais tu rajouter une colonne: pour mettre le résultat obtenus en triant le résultats de la colonne "K" et trier celle-ci d' après ce qui se trouve après "/" dans la colonne "X" par exemple ?

Ces données seront reprise en "C29" de la feuille "MENU" comme pour l'ordre alphabétique en "C26"

Excuse d'encore un peux abuser de ta bonne volonté. :(:)

Marc
 

Pièces jointes

  • marc201608neuf.xlsm
    995.4 KB · Affichages: 45

CISCO

XLDnaute Barbatruc
Bonjour

Il y a au moins deux problèmes dans ton fichier par rapport à la méthode que j'ai utilisée dans la colonne X pour classer les membres, à savoir que codeclassement utilise une valeur construite avec
CODE(STXT(DROITE(joueursalpha;3);1;1))
qui utilise la lettre placée à l'avant-avant dernière position (le 3 à la fin de DROITE) de chacun des "noms" donnés dans joueursalpha
+DROITE(joueursalpha;1)/10
qui utilise le chiffre à la fin de chacun des "noms" donnés dans joueuralpha
+LIGNE(joueursalpha)/10000
qui utilise le n° de la ligne où se trouve le "nom" en question, pour différencier chacun des membres ayant le même classement.

Or, tu as certains classements finissant en N J (Le N convient, pas le J) et d'autres en A10 (le A convient, le 1 n'est pas pris en compte et le 0 l'est).

Il faut donc que je modifie la définition de codeclassement. Les A10, A11 et ainsi de suite s'il y en a d'autres, ne devraient pas nécessiter de grosses modifications pour être pris correctement en compte. Par contre, pour ce qui est des N J... Pourrais tu m'en dire davantage sur ce dernier code. Il y en a t'il d'autres du même style ?

@ plus

P.S : En pièce jointe, une possibilité dans la colonne DONNEES LIS!X:X pour tenir compte des classements de la forme A01, A02....A10,A11...B 0,B 1..... et N J, N C (3 caractères quelconques). Cf. la définition de codeclassement dans le gestionnaire de noms.
 

Pièces jointes

  • marc201608dixbis.xlsm
    1 021.8 KB · Affichages: 35
Dernière édition:

CISCO

XLDnaute Barbatruc
Bonjour

Je n'ai pas trop le temps cet après midi. Ce soir peut être...

Ceci dit, pour ce qui est de la liste déroulante dans C29, vu le nombre de membres, ne préfèrerai tu pas une solution du style :
* l'utilisateur tape le classement désiré, B 0, C 2, A11....
* la liste déroulante ne propose que les membres ayant ce classement

Ainsi, l'utilisateur n'aurait pas à aller chercher au milieu ou à la fin de la liste très longue...

@ plus
 
Dernière édition:

bellenm

XLDnaute Impliqué
Bonjour CISCO,

Oui j'y pensais justement mais n'osant pas trop abuser de ta gentillesse je n'ai pas oser te le demander car tu aurais dit que je changeais souvent d'idée, mais ce serait plus clair effectivement avec autant de membre :)

Merci CISCO

Marc
 

bellenm

XLDnaute Impliqué
re:

Pour les type de classements, pour les "A" ils ne sont que 12 aux total, , A01 x 1, A02 x 1, A03 x , A04 x 1, A05 x 1, A06 x 1, A07 x 1, A08 x 1, A09 x 1, A10 x 1, A11 x 1 et 1 A12.
Ensuite oui le choix de la série B 0, B 2, B4, B 6, C 0, C2 et ainsi de suite jusqu’à N C ( se qui signifie Non Classé pas encore assez de points pour avoir un classement) et N J (Non joueur, inscrit au club mais ne peut pas jouer).

Voici pour plus d'explication des classements.

A plus.

Marc
 

bellenm

XLDnaute Impliqué
Bonjour Cisco,

Sur la feuille "CINT" le premier nom du joueur de l'équipe ne s’inscrivait pas ou alors j'avais aussi des vide dans la liste déroulante il faillait plusieurs clic pour les noms au complet apparaissent.

L'ordre n'était plus respecter dans l'apparition lors du deuxième ou troisième match des joueurs qui auraient du être enlever soit parce qu'ils avaient déjà été pris pour un tableau inférieur étaient toujours sélectionnable je voyais l'erreur car la mise en forme me l'indiquer en rouge signe d'erreur.

Puis après de nombreux changement je ne m'y retrouvait plus pour finir car ton fichier "marc201608dix" fonctionne très bien donc je ne trouvais pas ou jamais égarer des formule parce que ça allait de pire en mal!.

Merci CISCO pour ton aide car cette fois j'en ai vraiement besoin.

Marc
 
Dernière édition:

bellenm

XLDnaute Impliqué
Bonsoir CISCO

Et merci pour cette mise à jour qui est superbe, comme je le désirais
mais j'ai toujours le problème qui avait été résolut au post #46
Pas évident... En colonne T et U, ce sont presque les mêmes formules matricielles que précédemment, sauf qu'il y a
Code (Text):
(NB.SI(précédentclub;joueursbis)=0)
au lieu de
Code (Text):
(NB.SI(précédentbis;joueursbis)=0)
Pour que cela fonctionne, il faut définir dans le gestionnaire de noms
* débutclub
Code (Text):
=MAX(SI((MOD(LIGNE(précédent7col);12)=7)*(précédent7col<>DECALER(précédentbis;;;1));LIGNE(précédent7col));-5)+12
qui donne le n° de la ligne contenant le dernier nom du club en cours en remontant à partir de la cellule active (donc soit 7, soit le premier correspondant au groupe de tableaux successifs du club en cours (On se comprend, j'espère !!!))

* précédent7col
Code (Text):
=DECALER(CA;7-LIGNE(CA);;LIGNE(CA)-7;)
qui donne la plage au dessus de la cellule active commençant en ligne 7 composée d'une seule colonne (un peu commeprécédent7, mais cette dernière plage allait de la colonne C à la colonne I)

* et précédentclub
Code (Text):
=DECALER(CA;débutclub-LIGNE(CA);;LIGNE(CA)-débutclub;)
qui donne la plage contenant les membres du club en cours déjà sélectionnés, commençant à la ligne débutclub (donc incluse dans précédent7col)

J'ai l'impression que cela fonctionne (dans les colonnes C et H (pour avoir un système de sélection différent pour cette dernière, il faudrait soit complexifier davantage les formules, soit utiliser d'autres colonnes intermédiaires donnant les listes déroulantes, soit passer par du VBA)), mais tu as tout intérêt à vérifier très soigneusement cela... Bon courage.

@ plus

P.S : Cf. mes commentaires dans H1 et H2

après les changement effectués je n'ai plus le bon choix dans "CINT": pour le choix du 2ème joueur du tableau 2 par exemple et ayant un "C4" en place de deuxième sur le tableau 1 la liste me montre toujours les "C2" restant alors qu'il devrait être supprimé! C'est la seule chose qui reste qui n'est plus correct!

Dernière chose il vaut mieux avoir 30 feuilles dans un classeur ouvert ou 3 classeur de 10 feuilles pour la fluidité du fichier?

Merci beaucoup pour ta réponse.

Marc
 

CISCO

XLDnaute Barbatruc
Bonjour

Bonsoir CISCO
... je n'ai plus le bon choix dans "CINT": pour le choix du 2ème joueur du tableau 2 par exemple et ayant un "C4" en place de deuxième sur le tableau 1 la liste me montre toujours les "C2" restant alors qu'il devrait être supprimé! ...
Marc

Oui, mais j'ai l'impression que ce défaut existait déjà sur le fichier réel que tu m'as envoyé...

J'essaye de corriger cela au plus vite.

Pour ce qui est de la rapidité, le problème vient certainement de la grande quantité d'informations et de formules matricielles. Le mieux, c'est de passer par du VBA ou des tableaux croisés dynamiques, mais je maitrise nettement moins bien le sujet... Je vais essayer...

@plus
 

CISCO

XLDnaute Barbatruc
Bonjour

Pour ce qui est des listes dans la feuille CINT, j'ai l'impression que cela vient du fait que le nom CAmoins11 =DECALER(CA;-11; ) n'est pas défini dans le gestionnaire de noms. Il permet de connaitre le 2ème joueur du groupe précédent, lorsque plusieurs groupes successifs concernent le même club.
Il sert dans le nom classementprécédent. Celui-ci, n'ayant pas CAmoins11, ne fonctionne pas (mais Excel n'envoie pas de message d'erreur. Dommage).
Une fois que tu auras rajouté ce nom CAmoins11, dis moi si cela fonctionne correctement.

J'essaye de faire du nettoyage dans ton fichier pour que cela tourne plus vite, mais ce n'est pas évident.

@ plus
 

bellenm

XLDnaute Impliqué
Bonjour CISCO,

Oui c'était bien ce nom dont tu n'as jamais fait référence qui manquait, cela fonctionne très bien pour les tableaux, mais toujours un hic pour le premier tableau qui ne prend pas en compte ce problème de ne pas prendre dans sa liste plus fort que celui juste au dessus de lui (parlant du joueur), par contre si j'essaye après un tableau vide pas de problème pour le choix du deuxième joueur car il n'y a pas plus fort que le premier sur la liste déroulante.

Donc si pas de solution juste à faire attention lors du premier tableau uniquement!

Donc ok juste rajouter dans gestionnaire des noms: "CAmoins11" =DECALER(CA;-11; )

Marc.
 

CISCO

XLDnaute Barbatruc
Bonsoir

Bonjour CISCO,
... mais toujours un hic pour le premier tableau qui ne prend pas en compte ce problème de ne pas prendre dans sa liste plus fort que celui juste au dessus de lui...
Marc.
Oui, effectivement, je n'avais pas vu ce défaut dans le premier tableau. Pour corriger cela, il faut définir codeclassement (étendue = classeur) avec
Code:
=DROITE(SI(LIGNE(CA)<19;précédent;SI((DECALER(précédentbis;;;1)=DECALER(précédentbis;-12;;1))*(numjoueur="1er joueur :");CAmoins11;précédent));3)

@ plus
 

bellenm

XLDnaute Impliqué
Bonjour CISCO,

Le problème du post précédent n'est toujours réglé malgré ta modification!

Donc une fois le premier tableau passé plus de problème même si au tableau 4 je met une autre équipe (pour revenir a zéro) aux cinquième tableau nickel si je met comme 1er joueur un "D 0" comme deuxième j'ai soit un "D 0" soit plus bas , jamais un des autres joueurs classer plus haut comme "C 4 ou C 2".

Par contre actuellement sur le premier tableau si je met "D 0" comme premier j'ai en deuxième joueur le choix entre "C 2, C2, C 4, D 0 et les joueurs plus bas!

Mais en commencent direct sur le deuxième pas de problème non plus le deuxième joueur sera de classement égal ou plus faible que celui du premier!

Pourquoi cela ne vas pas avec le 1er tableau, la solution trouvé actuellement je n'utiliser donc pas le premier tableau.

Pour le reste un travail super !
Merci donc CISCO

Marc
 

Statistiques des forums

Discussions
312 321
Messages
2 087 266
Membres
103 502
dernier inscrit
talebafia