Recherche V dans des plages de données variables

Bonjour à tous,

Je me fais ma base de donnée sur les résultats de football.

Dans mon 1er onglet, j'indique les matchs et les résultats.

Dans le deuxieme onglet j'indique la performance de chaque equipe à chaque journée.

Ma formule n'est pas optimisée et ne peux pas se dupliquer, je dois changer la plage de donnée à chaque journée.

Je souhaiterais une autre formule qui va cherche le resultat de l'equipe X lors de la journée 1 / 2 / 3 ...Je n'arrive pas à trouver comment faire si quelqu'un à une idée?

Ci joint mon fichier pour que vous voyez l'idée de ce que je veux faire.

merci de votre aide

17ligue-1.xlsx (191.73 Ko)

Bonjour,

Il y aurait peut-être eu plus simple, mais je ne vois pas...

Du coup je te donne cette solution :

=RECHERCHEV(NB.SI.ENS('DB L1'!$B$2:$B$101;R$1;'DB L1'!$O$2:$O$101;"victoire";'DB L1'!$D$2:$D$101;$A9)-NB.SI.ENS('DB L1'!$B$2:$B$101;R$1;'DB L1'!$O$2:$O$101;"defaite";'DB L1'!$D$2:$D$101;$A9)

+NB.SI.ENS('DB L1'!$C$2:$C$101;R$1;'DB L1'!$P$2:$P$101;"victoire";'DB L1'!$D$2:$D$101;$A9)-NB.SI.ENS('DB L1'!$C$2:$C$101;R$1;'DB L1'!$P$2:$P$101;"defaite";'DB L1'!$D$2:$D$101;$A9);{-1."défaite";0."nul";1."victoire"};2;FAUX)

Je te joins le fichier qui va avec :

13copie-de-ligue-1.xlsx (193.46 Ko)

Tu devrais déclarer ta base de données comme un tableau dynamique, ça éviterait que tu n'aies à changer à chaque fois la ligne 101 pour une autre ligne...

Salut "Ausecour",

Merci pour ton aide qui a l'air de fonctionner. Peux tu m'expliquer un peu la formule si un jour j'ai besoin de refaire quelque chose de similaire pour que je comprennes?

Je n'ai pas compris ta remarque sur la ligne 101 ?

Merci

Pas de soucis je peux t'expliquer la formule, en fait elle est plus simple qu'il n'y parait :

=RECHERCHEV(NB.SI.ENS('DB L1'!$B$2:$B$101;R$1;'DB L1'!$O$2:$O$101;"victoire";'DB L1'!$D$2:$D$101;$A9)-NB.SI.ENS('DB L1'!$B$2:$B$101;R$1;'DB L1'!$O$2:$O$101;"defaite";'DB L1'!$D$2:$D$101;$A9)

+NB.SI.ENS('DB L1'!$C$2:$C$101;R$1;'DB L1'!$P$2:$P$101;"victoire";'DB L1'!$D$2:$D$101;$A9)-NB.SI.ENS('DB L1'!$C$2:$C$101;R$1;'DB L1'!$P$2:$P$101;"defaite";'DB L1'!$D$2:$D$101;$A9);{-1."défaite";0."nul";1."victoire"};2;FAUX)

En fait tu as juste besoin de 3 couleurs:

En bleu tu as une fonction recherchev, elle recherche une valeur donnée (ici tout ce qui est en vert et rouge) dans la première colonne d'un tableau que tu lui donnes, et renvoie la nième colonne de la ligne qui contient la valeur que tu cherches, ensuite, tu dis si tu veux une valeur approchée ou non: FAUX ici car on veut la valeur exacte.

donc tu vas chercher soit la valeur -1, soit 0, soit 1, et ça va te retourner soit défaite, soit nul, soit victoire.

Ensuite tu as les formules en vert et rouge, déjà les formules en vert sont exactement les mêmes, il y a juste la première qui compte pour les clubs jouants à domicile, et l'autre à l'extérieur, idem pour les formules en rouge, on peut donc encore simplifier :

=RECHERCHEV(NB.SI.ENS('DB L1'!$B$2:$B$101;R$1;'DB L1'!$O$2:$O$101;"victoire";'DB L1'!$D$2:$D$101;$A9)-NB.SI.ENS('DB L1'!$B$2:$B$101;R$1;'DB L1'!$O$2:$O$101;"defaite";'DB L1'!$D$2:$D$101;$A9)

;{-1."défaite";0."nul";1."victoire"};2;FAUX)

Il n'y a plus que ça qui nous intéresse, tout ce que je vais dire pour les clubs jouant à domicile, ça vaudra pour ceux qui jouent à l'extérieur.

Maintenant si je te disais que la formule verte et la formule rouge sont les mêmes? La seule chose qui les différencies c'est que l'une des 2 compte les victoires, l'autre les défaites, que la victoire est positive, la défaite négative.

On peut encore simplifier l'étude à seulement cette fonction :

NB.SI.ENS('DB L1'!$B$2:$B$101;R$1;'DB L1'!$O$2:$O$101;"victoire";'DB L1'!$D$2:$D$101;$A9)

Donc que dire de cette fonction, elle "compte le nombre de cellules spécifiées par un ensemble de conditions ou de critères", je lui donne donc des plages de cellules sur lesquelles je vais filtrer mes valeurs, je filtre d'abbord b2:b101 par rapport au club, je ne veux que les matchs du club qui m'intéresse, puis sur o2:o101, je ne veux que les victoires, puis sur d2:d101 je ne veux que le jour où je veux connaître le résultat. Et si le club a gagné à domicile ce jour là, ça compte 1 cellule, sinon ça renvoie 0.

Je fais la somme de tout ces comptages et je regarde ce que ça me donne, est ce qu'il a gagné un match a domicile, en a t-il perdu un à domicile, ou alors à l'extérieur? Et j'affiche le texte qui correspond grâce à ma formule de recherche

J'espère que tu comprends maintenant, sinon me dire

Bonjour Ausecour,

Merci pour ta réponse, presque claire. Comment fais tu pour obtenir le +1 / 0 ou -1 ?

Tu indiques si victoire +1( formule verte) et -1 défaite ( formule rouge) , dans un match si une équipe gagne et l'autre perd ça fait 0 .

Merci

Bonjour,

Le +1, -1, 0 dépend du nombre de victoire et de défaites que tu comptes, tu fais la somme des victoires du jour,des défaites, et comme tu as un seul match, ça donne 1 si tu as une victoire, -1 si tu as une défaite, et si tu ne trouves ni défaite, ni victoire, c'est que le match c'est terminé par un nul.

ok je jouerais avec la formule pour essayer de comprendre.

AU sujet de "Tu devrais déclarer ta base de données comme un tableau dynamique, ça éviterait que tu n'aies à changer à chaque fois la ligne 101 pour une autre ligne..."

Comment faire effectivement pour qu'il incrémente à chaque nouvelle ligne?

Bonjour,

En faisant la commande Accueil -> Mettre sous forme de tableau, ton tableau entrera dans le gestionnaire de noms comme un tableau déclaré, ça te permettras de changer tes formules en formules fonctionnant par nom, ce qui est bien avec ce genre de tableau, c'est qu'il se redimensionne automatiquement, donc tu n'as a utiliser les noms qu'une seule fois

Je te joins ton fichier en forme de tableau déclaré, tu comprendras mieux :

Utiliser les noms de plage comme je l'ai fait est très simple, tu sélectionnes tes cellules, et si Excel trouve un nom qui correspond, il remplace la référence par le nom, comme le nom change tout seul la plage de cellules si tu ajoutes des lignes à ton tableau, ça suit parfaitement, j'ai fait la même chose pour ton premier tableau de résultat, si tu ajoutes une journée en tapant 15, ça mettra les formules et cherchera tous les résultats de cette journée.

salut ausecour,

ha oui génial, comment fais tu pour les formules? "cette ligne" remplace A1 et autre ?

Bonjour,

Pour les formules c'est très simple, une fois que tu as déclaré ton tableau dans le gestionnaire de noms, quand tu resélectionne les plages de cellules dans ta formule, ça met le nom automatiquement, du coup si tu prends toutes les données d'un des champs de ton tableau, ça mettra directement le nom du champ, mais pour ça il faut refaire au moins une formule de la colonne, elle se mettra à jour ensuite sur le reste de la colonne

J'espère avoir répondu à ta question, si non, me dire ce qui n'est pas clair

Salut ausecour,

j'ai un soucis avec mon fichier. Comme tu le sais probablement, certaines équipes jouent plus de match que d'autre. Par exemple PSG joue la ligue des champions mais pas Dijon.

Comment faire pour ajouter un match au PSG mais pas à tous les autres ? et en plus avec une equipe étrangère de base?

je te mets un exemple fictif.

Merci de ton aide

10test-ausecour.xlsx (123.38 Ko)

Bonjour,

Je ne vois pas trop où est ton exemple

Ce n'est pas possible d'ajouter une ligne journée uniquement pour un club et pas pour les autres, en revanche, il est possible de vérifier si l'équipe a joué un match le jour j ou non, il suffit de rajouter une condition qui le teste, un NB.SI.ENS qui compterait le nombre de matchs joués dans la journée par l'équipe par exemple.

Salut Au secours,

Aurais tu une idée de comment faire dans ce cas la? pouvoir rechercher uniquement les matchs d’une equipe.

J'ai le même cas lorsqu'un match est reporté et joué 1 mois plus tard, il faut le compter à la date ou il est joué et pas supposé être joué.

Je vais avoir du mal à reprendre le sujet en cours de route désolé, passe plutôt ce sujet en résolu et recrées en un avec des explications et un fichier, tu auras plus de chances d'avoir une réponse répondant à ton besoin

A bientôt sur un nouveau sujet

Rechercher des sujets similaires à "recherche plages donnees variables"