Tri tableau comportant fonction décaler ?

Bonjour,

Je viens vers vous en espérant que vous puissiez m'aider sur mon ptit problème que je n'ai pas réussi à résoudre en lisant les forums !

Avec mes amis nous jouons au foot tous les Week ends et je voulais faire un tableau récapitulatif des scores (feuille result) et petit plus, un classement selon le % de victoires où figure également le nombre de matchs joués, victoires etc... (cf. feuille Clsst).

Seulement mon tableau récapitulatif de la feuille "result" est dans l'autre sens que mon tableau dans la feuille "clsst". Afin d'éviter d'avoir à faire les correspondances case par case entre chaque feuille (joueur se rajoutent régulièrement), je cherchais un moyen d'étirer une formule vers le bas et que seulement les colonnes s'incrémentent du type (sur le tableau de la feuille "clsst") :

=A$1

=B$1

=C$1

N'ayant pas réussi je me suis servi tant bien que mal de la fonction décaler (associée à ENT et LIGNE) et ça marche dans le sens où je peux étirer ma formule.

Content de moi, je lance un tri du tableau de la feuille Clsst et là PAF, la formule décaler bah justement ne se décale pas... J'ai vu qu'en figeant la cellule prise par la fonction "ligne" celà marchait mais encore une fois c'est au coup par coup.

Quelqu'un connait-il une solution qui permettrait donc de reprendre les données d'un tableau d'une feuille1 (où les lignes sont inversés) et de les reporter et trier sur une feuille 2 sans que tout se décale (Tableau évolutif toutes les semaines...)?

Voilà j'espère avoir été le plus clair possible, ci-joint le fichier en question et merci d'avance pour ceux qui pourront accorder un peu de temps à mon pb.

Bonne soirée !

Bonjour. Bienvenue sur le Forum

Tu as oublié le fichier

Cordialement

Exact, le voilà !

25five.xlsx (25.62 Ko)

Bonjour,

Je ne sais si j'ai tout compris!

J'ai bouleverser un peu ta feuille de classement.

Juste une petite macro pour recopier les données du tableau de résultats dans le tableau du classement.

Ensuite il me manque l'information de tri. Sur quelle ou quelles colonnes doit se faire le tri?

Remettez les formules en place sur la feuille de résultat avec les données de cette même feuille.

S'il faut compléter le code pour le tri revenez vers le forum.

Cordialement

ddetp88

11ddetp88-five.xlsm (32.66 Ko)

Bonjour et merci pour ta réponse ddetp,

Effectivement ça marche !

Par contre je n'y connais rien en macro , saurais tu arriver au même résultat mais avec des formules (même à rallonge je prends!) que je puisse faire évoluer mon tableau par la suite si besoin (ajout nouveau joueur ou autres...).

Pour le tri, il se ferait en fonction du % de victoire (%V) pourvu que le joueur ai fait plus de 3 matchs (J>3).

Cdt

C'est tellement plus simple de le traiter avec un petit code vba.

J'ai remis le tri et des formules en place. Ces dernières à contrôler.

Si le tableau évolue, le code prévoit cette évolution.

Je regarde pour les formules sans le vba.

ddetp88

17ddetp88-five.xlsm (34.94 Ko)

sans vba. Moins pratique à mon sens car en fonction des évolutions du nombre de joueurs, il faudra allonger les plages en recopiant les formules.

Dis nous quelle version tu vas utiliser

Cordialement

21ddetp88-five.xlsx (27.36 Ko)

Yes c'est good merci ddetp88 !!!

Je pense pour l'instant utiliser les formules et si j'ai un peu plus de temps me mettre progressivement au VBA.

Encore une dernière question (à la limite du chipotage):

Sur ma colonne %V qui me sert de base pour trier, si le joueur n'a pas jouer plus de X rencontres, un texte apparaît "play again". Lorsque je fais le tri du plus grand au plus petit, ces mêmes joueurs apparaissent en premier dans le classement (texte passe avant % apparemment) genre:

1 - Rios - Play again

2 - Gui - Play again

3 - Georges - 100%

4 - Rémi - 50%

etc

J'aurais souhaité les faire figurer en dernier, après les joueurs ayant joué plus de 2 matchs à 0% :

1 - Rios - 100%

2 - Gui - 34%

3 - Georges - 0%

4 - Rémi - Play again

etc

Aurais tu une idée pour garder ce texte tout en respectant le classement ?

Cdt

peut être en personnalisant le tri.

Sélectionner la plage à trier

Données/trier/

Ordre/listes personnalisée et ajouter Play again pour effectuer le tri sur cette donnée.

Essaie un tri avec cette option.

Cordialement

Nop ça ne marche pas...

De plus j'avais affecté une couleur à une ligne sur 2 pour plus de visibilité mais dès que je tri ça mélange les couleurs genre 2 lignes grises d'affilé.

Je m'y remets demain !

Bonjour,

Je pensais avoir fait cela dans le fichier joint.

Il faut utiliser une MFC (Mise en Forme Conditionnelle) avec cette formule =SI($B2<>"";MOD(LIGNE();2)=0;"")

Vois l'exemple en téléchargement

cordialement

ddetp88

C'est OK pour la MFC merci !

Pourrais-tu m'expliquer brièvement la formule ? Car j'ai vu que mod correspondait au reste d'une division (1 ou 0 ici) mais tu rajoutes =0 dans "valeur si vrai" et "" si faux. Il fait un test sur le reste = 0 dans "valeur vraie" de la fonction SI ?

Pour le tri avec le texte "play again" j'ai trouvé une solution provisoire, je trie du plus petit au plus grand de sorte à ce que "play again"apparaissent en dernier, après je filtre "play again" puis je retrie du plus grand au plus petit et refait apparaître "play again" en dernier... Pas top mais ça dépanne !

Je joins le fichier pour explication

A bientôt

OK, encore merci à toi tu m'as évité un bon mal de crâne !

A une prochaine 8)

Rechercher des sujets similaires à "tri tableau comportant fonction decaler"