Indexer sans doublons ?

Bonjour, voici un tableau sur lequel dans la colonne F de la feuille "BdCongés" il y a une formule d'indexation.

Est-il possible de la modifier afin qu'elle indexe sans doublons sur les dates ?

Merci de votre aide..

1pour-elsouba.xlsm (90.88 Ko)

bonsoir forum, ops1er ,

Je ne suis pas sur d'avoir compris ce que tu entendais par :

Est-il possible de la modifier afin qu'elle indexe sans doublons sur les dates ?

Essaie "=SI(OU(A2<>Congés!$B$5;C2=C1);"";MAX($F$1:F1)+1)" en F2 au cas où ...

Amicalement

C'est presque ça, en effet si jamais j'ai 2 fois la même ligne je ne veux pas qu'elle soit comptée 2 fois.

J'ai essayé ça mais ça ne peut pas aller puisque ça ne compte pas si la date y est 2 fois:

"=SI(OU(A2<>Congés!$B$5;NB.SI(C1;C2)>1);"";MAX($F$1:F1)+1)"

Parce que ce que tu me propose c'est une comparaison sur 2 lignes seulement :

"=SI(OU(A2<>Congés!$B$5;C2=C1);"";MAX($F$1:F1)+1)"

alors que moi je voudrais que cela soit comparé sur la colonne entière.

je ne vois pas comment je peux faire

bonjour forum ,oops1er

Je pensais que les données seraient triées par date , d'où la 1ere formule.

Essaie plutôt celle-ci (tu n'étais pas loin ) :

=SI(OU(A2<>Congés!$B$5;NB.SI($C$1:C2;C2)>1);"";MAX($F$1:F1)+1)

Amicalement

Apparemment cela fonctionne.

Merci beaucoup.

re...

en fait ça ne va pas comme je voudrais !!

Après avoir porté la formule sur mon document original, je me rends compte que ça ne peut pas fonctionner.

Cela indexe sans doublons sur les dates mais en ne prenant pas compte des noms.

Je voudrais que cette formule indexe par rapport à un nom choisi dans la feuille Congés! sans doublons de date que par rapport à ce nom.

Dans le cas présent cette formule indexe bien par rapport au nom choisi dans la feuille Congés! mais ensuite vérifie les doublons sur toute la colonne sans prendre en compte le nom.

Je ne sais pas si je suis clair :

ex : si 3 agents différents sont en congé le même jour, la formule ne les indexera pas car elle verifie les doublons de dates de tous le monde. Donc comme elle trouve des doublons, elle n'indexe pas.

Si la formule cherchait des doublons de date que sur le nom choisi ça correspondrait exactement à ce que je cherche.

Je reste à votre disposition pour tout complément d'explications.

merci à tous.

=SI(NB.SI($A$2:A3;A4)=0;1;SI(SOMMEPROD(($A$2:A3=A4)*($C$2:C3=C4))=0;MAX(($A$2:A3=A4)*($F$2:F3))+1;0))

Est ce que tu peux m'expliquer le raisonnement et la formule s'il te plaît ?

Bonsoir forum , oops1er

Un petit fichier avec quelques explications.

N'hésite pas à revenir si problème

Amicalement

30explic-oops1er.zip (22.99 Ko)

Vraiment merci énormément pour ton aide :

seulement voilà, ça commence à être drôlement balaise pour moi, simple novice.

Donc il faut que je me mette à apprendre la fonction sommeprod dans un premier temps.

Parce que là j'y pige rien du tout. J'ai essayé de réutiliser la formule sur mon document original mais c'est mission impossible.

Je vais me concentrer et faire travailler mes neurones pour tenter d'y comprendre quelque chose.

Juste une petite chose, pourquoi la 2ème formule n'est pas matricielle alors que les suivantes oui ?

bonsoir forum , oops1er ,

Juste une petite chose, pourquoi la 2ème formule n'est pas matricielle alors que les suivantes oui ?

Très simple ,c'est une erreur de ma part..

De plus à la fin de la formule en F3 tu as :

SI(NB.SI($A$2:A2;A3)=0;1;SI(SOMMEPROD(($A$2:A2=A3)*($C$2:C2=C3))=0;MAX(($A$2:A2=A3)*($F$2:F2))+1;" "))

Remplace " " par 0 comme dans les formules suivantes .Tu auras des erreurs sinon lorsque A3 sera égal à A2.

Tu la saisis en formule matricielle où non ;cela n'a pas d'importance pour cette ligne.

MAX(($A$2:A2=A3)*($F$2:F2))pourrait s'écrire plus simplement ici :(A2=A3)*F2

Pour les autres lignes (ligne 4 par exemple):

MAX(($A$2:A3=A4)*($F$2:F3)) =MAX((A2=A4)*F2 ; (A3=A4)*F3)

Pour traité cela il faut une formule matricielle

Amicalement

Rechercher des sujets similaires à "indexer doublons"