Tableau croisé dynamique - compter clients actifs

  • Initiateur de la discussion Initiateur de la discussion antgrandj
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

antgrandj

XLDnaute Nouveau
Bonjour à tous,

Je ne suis pas très doué, c'est pourquoi j'ai besoin de votre aide.

J'ai un tableau excel où il y a plusieurs colonnes dont CLIENT - DATE - MOIS - ANNÉE - etc. J'ai besoin de calculer le nombre de clients actifs.
Un client est actif pour 12 mois, c'est-à-dire que dès qu'il commande, il devient actif pour 12 mois. Si il recommande avant la fin des 12 mois, il est réactivé pour 12 mois. Il ne faut donc le compter qu'une seule fois si il a été réactivé durant les 12 mois. Mais si il a été réactivé après 12 mois, il faut le compter une deuxième fois.

Evidemment, j'utilise un tableau croisé dynamique.

Difficile d'être clair. J'ai essayé de faire un petit exemple dans le fichier ci-joint.

Merci d'avance pour votre aide.
 

Pièces jointes

Re : Tableau croisé dynamique - compter clients actifs

Un tout grand merci, ça me parait correct!

Il y a une technique spécial pour étendre la formule à la colonne entière? Parce que je crois qu'en mettant la souris sur le coin inférieur droit de la case et puis en étirant, ça ne marche pas.
 
Re : Tableau croisé dynamique - compter clients actifs

Bonjour,

la formule est matricielle, certainement tu vas avoir un problème de ralentissement du fichier lors de tirage sur toute la colonne comme tu dis. (c'est plus qu'1 milion de lignes)

tu peux mettre ton tableau sous forme de tableau (Onglet : Accueil ==> Style)
puis tu mets la cellule H2 en mode édit (sélectionner la cellule H2, puis taper la touche F2)
en suite valider en matricielle (par la combinaison de touches : Ctrl+Maj+Entree)

@ + +
 
Re : Tableau croisé dynamique - compter clients actifs

Je reviens vers toi.

J'ai une autre requête du même genre mais je ne sais pas si elle est réalisable.

Tout est expliqué dans le fichier excel en pièce jointe. La première feuille les explications et la deuxième la base de données.

Merci d'avance.
 

Pièces jointes

Re : Tableau croisé dynamique - compter clients actifs

Bonjour,
j'ai enlevé des milliers de lignes pour te montrer la procédure puisque c'est trop avec 10000 lignes de le faire avec une matricielle..., tu peux le faire chez toi et attendre un peu de temps pour avoir les résultats puis copier/collage spécial/valeur.
@ + +
 

Pièces jointes

Re : Tableau croisé dynamique - compter clients actifs

Bonjour,
Col_Clients et Col_Dates correspondent aux champs contenant les clients et dates... va voir dans le gestionnaire de noms (Ruban / Onglet : Formules)
@ + + +
 
Re : Tableau croisé dynamique - compter clients actifs

Bonjour,

N'y a-t-il pas une manière moins lourde pour excel d'arriver à la solution? Parce qu'il prend un temps fou juste pour une vingtaine de lignes alors qu'en réalité, j'en ai 40000. Même pour ouvrir le fichier ça prend du temps.

Merci d'avance.
 
Re : Tableau croisé dynamique - compter clients actifs

Petit problème. J'ai oublié de mentionner que je voulais sélectionner les clients qui ont commandé seulement un certain produit (=colonne produit).

J'ai essayé de modifier la formule ainsi:

{=NB(1/FREQUENCE(SI((Col_Dates>=A2)*(Col_Dates<=B2)*(Col_Prod=30);EQUIV(Col_Clients;Col_Clients;0));LIGNE(Col_Clients)-1))}

30 étant la classe du produit recherché.

Mais malheureusement, cela ne marche pas.
 
Re : Tableau croisé dynamique - compter clients actifs

Bonjour,
=NB(1/FREQUENCE(SI((Col_Dates>=A2)*(Col_Dates<=B2)*(Col_Prod=30);EQUIV(Col_Clients;Col_Clients;0));LIGNE(Col_Clients)-1))
en validant en matricielle ça doit fonctionner, mais il faut d'abord définir le champ Col_Prod dans le gestionnaire de noms en veillant qu'il aie la même hauteur que les autres champs...
@ + + +
 
Re : Tableau croisé dynamique - compter clients actifs

Bonjour,
Col_Prod=DECALER(Col_Clients;;1)
mais il n'existe pas sur le fichier fournis, moi j'ai DECALER(Col_Clients;;1) parce qu'on doit décaler Col_Client de une colonne à droite pour avoir la colonne des dates mais pour le Col_Prod je ne sais pas où il se situe pour que je puisse t'aider...
@ + +
 
Re : Tableau croisé dynamique - compter clients actifs

Justement, dans mon fichier que j'utilise, la colonne que j'ai définie dans le gestionnaire de noms Col_Prod est bien celle à côté (droite) de Col_Client donc je suppose que c'est sensé fonctionner puisque je décale de 1.
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Réponses
2
Affichages
274
Réponses
2
Affichages
578
Réponses
4
Affichages
163
Retour