Unlock a world of possibilities! Login now and discover the exclusive benefits awaiting you.
Bonjour,
J'ai dans QV un tableau dont la présentation est comme celle ci dessous
ANNEE 1 | ANNEE 2 | ANNEE 3 | |
---|---|---|---|
Client 1 | 60 | 62 | 36 |
Client 2 | 0 | 37 | 34 |
client 3 | 0 | 25 | 29 |
.... |
J'aimerais avoir l'information, dans le même tableau ou pas (n'importe), :
- Pour chaque année, quel est le nombre de client dont le CA est supérieur à 35
Merci d'avance
Mathieu
Je me lance, c’est la première fois que propose une solution.
=count( {$<CHIFFRE_AFFAIRE = {‘>=35’} >} NOM_CLIENT)
Olivier
Merci de ta réponse
Du coup je suis parti sur un autre tableau et j'utilise la formule suivante :
count (distinct if (aggr(sum([CA]), CLIENTS, ANNEE) > 35, CLIENTS))
Et ça marche super bien
Les 2 méthodes sont bonnes.
La différence entre les 2 tient dans la sollicitation de la machine.
Après expérimentation sur une appli qui contient bcp de données, le SET ANALYSIS est bien plus rapide. C’est pour çà que je m’y suis mis.
Autre astuce, faire un COUNT prend du temps, alors qu’une somme est très rapide.
Du coup, notre formateur m’avait recommandé d’ajouter un champ avec la valeur 1 pour chaque ligne et de faire une somme de ce champ, ce qui revient au même.
De : Matr Thieu
Envoyé : jeudi 17 octobre 2013 11:09
À : Olivier FELIX
Objet : Objet : - Compter dans un tableau en appliquant un critère
<http://community.qlik.com/> QlikCommunity
Compter dans un tableau en appliquant un critère
nouveau commentaire par Matr Thieu <http://community.qlik.com/people/MI_Mathieu?et=watches.email.document_comment> Afficher tous les commentaires sur ce document <http://community.qlik.com/docs/DOC-5151?et=watches.email.document_comment#comment-10106>
Bonjour,
Les deux solutions marchent, elles dépendent surtout des données dans la base.
Le set analysis marche si la table contient une valeur CA / client (données déjà agrégées). Par contre, si il y a plusieurs lignes par client (détail des ventes par exemple), il faut faire l'aggrégation dans l'expression. L'avatange est que cela permet de continuer à filtrer sur d'autres dimensions.
Dans l'expression, j'aurais fait :
Sum(
Aggr(
If(Sum(CA)>=35,1,0)
,CLIENTS, ANNEE)
)
Cordialement