Calculer valeur unique textuel avec critère de dates

Résolu/Fermé
Marierj - 7 déc. 2015 à 14:37
Vaucluse Messages postés 26496 Date d'inscription lundi 23 juillet 2007 Statut Contributeur Dernière intervention 1 avril 2022 - 7 déc. 2015 à 15:52
Bonjour,

Je souhaite avoir vos conseils car j'ai une demande qui recoupe plusieurs réponses sur ce forum, mais à chaque fois j'ai une petite différence de cas qui influence ma fonction.

Voici mon cas: J'ai une data base de clients. Chaque client à un matricule composé de lettre et de chiffre. Ex: Mr Dupont = C12 (ce qui m'empeche d'utiliser la fonction MATRICIELLE =NB(1/FREQUENCE(SI( car elle ne fonctionne plus dès que j'intègre du contenu non chiffre dans mes cellules)

Je souhaite savoir combien de clients différents sont venus entre deux dates spécifiques.

Voici mon tableaux:

colonne A
1- C1
2- C35
3- C28
4- C35
5 - C3



Colonne B
1- 31/01
2- 18/01
3- 15/03
4- 1/01
5- 6/05


critère: entre le 1/01 et le 31/01


Normalement, le nombre de clients différents venus entre le 1/01 et le 31/01 devrait être 2: le C1 et le C35.

Auriez-vous la gentillesse de me redirigé vers un cas identitque et résolu si vous en avez le souvenir ou m'aider? ;)

Mille mercis pour votre aide et belle journée à tous.

Marie

1 réponse

Vaucluse Messages postés 26496 Date d'inscription lundi 23 juillet 2007 Statut Contributeur Dernière intervention 1 avril 2022 6 395
Modifié par Vaucluse le 7/12/2015 à 15:52
Bonjour

le plus simple pour alléger les formules est de nommer le champ de recherche à partir de deux cellules début et fin

pour l'exemple:
les dates en A:A, classées par ordre croissant
les codes à décompter en B:B
en D1 la date début
en D2 la date de fin

formule pour nommer le champ, nommé par exemple champ
=DECALER($B$1;EQUIV($D$1;$A:$A;0)-1;;NB.SI.ENS($A:$A;">="&Feuil1!$D$1;$A:$A;"<="&$D$2))

pour la formule qui compte les valeurs différentes dans le champ, n'importe quelle cellule:

=SOMME(SI(champ<>"";1/NB.SI(champ;champ)))

attention. Formule matricielle à entrer avec la touche ENTER en maintenant les touches ctrl et shift enfoncées. Elle se retrouve automatiquement entre accolades dans la barre de formule.

bien entendu, vous pouvez remplacer dans cette formule chaque nom "champ" par la formule équivalente DECALER(.... si vous ne voulez pas nommer

crdlmnt





Errare humanum est, perseverare diabolicum
0
Ca marche!! un tout tout grand Merci Vaucluse :) :)
0
Vaucluse Messages postés 26496 Date d'inscription lundi 23 juillet 2007 Statut Contributeur Dernière intervention 1 avril 2022 6 395
7 déc. 2015 à 15:52
Pas de quoi
Bonne route
0