Unlock a world of possibilities! Login now and discover the exclusive benefits awaiting you.
Bonjour
J'ai un calcul d'évolution de la population par commune que je veux ramener en base 100 :
-un champ "pop" de 1968 à 1999
Je voudrais donc calculer automatiquement mes différentes années de recensement par rapport à la base 100 de 1968.
Mes données sont rangées en ligne : un champ identique pop renseigné par autant de lignes que d'années.
comment lui indiquer de prendre la première valeur ? la plus ancienne ?
Merci
Bonjour,
Voilà la formule que j'ai trouvé et qui marche :
Sum(DISTINCT {<NOM_COMM={*},annee_pops={*}-{'2009'}-{'2010'}>}pops_com)
/
Sum({<NOM_COMM={*}>} total if(annee_pops=min(total annee_pops),[pops_com])))*100
soit en simplifiant :
Sum(pops_com)
/
(Sum( total if(annee_pops=min(total annee_pops),[pops_com])))*100
Désolée je ne sais pas pourquoi un traducteur automatique a mélangé mon propos !
Aline,
Il te faudra utiliser un set analysis afin de fixer une période déterminer.
Faire qch du type: sum(XX) / sum({set analysis} XXX)
Reste à faire le set. Un peu de doc devrait t'aider: Sets Analysis: syntaxes, exemples
Elle est en français mais son pendant anglais existe aussi.
Si j'essaie de mémoire (sans QV pour tester), j'écrirais qch comme ça (à multiplier par 100)
100*sum(XXX)/sum({<Year={"$(min({1} Year)"} >} XXX)
Le 1 dans permet de prendre toutes les années même celles qui ne sont pas sélectionnées. Si tu veux la première année sélectionnée, remplacer ce 1 par $.
Fabrice
si je comprends tu veux un index chart
you can find it here; follow the correct answer and goto qvdesign blog (you can find index chart and a lot of others wonderful chart)
Bonjour, J'ai essayé de rédiger mon calcul comme ça : 100*sum({CommunesEpciGdA}pop)/sum({ pop}) Ca marche toujours pas ? une idée ???
Précision : mon champ annee est en format texte
Merci
Aline,
La syntaxe apparaît incorrecte, c'est sûr.
As-tu lu le doc sur les set analysis ? Il faut construire petit à petit ces sets, car la syntaxe est barbare et susceptible (la moindre erreur se traduit par un null)
Par exemple:
sum({<Year = {"1960"} >} pop)
Pour obtenir la population de l'année 1960. Puis tester autre chose.
Champ année: attention, il n'y a pas de type de données dans Qlikview. Toutes les données sont dual (numérique et formattées), sauf le texte qui n'a pas de pendant numérique. 1960 est donc sûrement dual.
Fabrice
Bonjour, J'ai trouvé une syntaxe qui marche :
sum (pops_pop)/ sum({}pops_pop)
Le problème c'est que si je remplace 2009 en 1968 ou 1999 ça ne marche plus.
Pourtant ces données sont bien dans mon tableau :
codgeo annee periode nb_unites superf pop pop_n_1 nais dece
13001 2009 10 1186,08 141895 134324 15429 10575
13001 1999 9,01 1 186,08 134324 123842 14064 9027
13001 1990 8,005 1 186,08 123842 121327 13249 7825
13001 1982 7,035 1 186,08 121327 110659 11664 6740
13001 1975 6,975 1 186,08 110659 89566 11475 6133
13001 1968 1 186,08 89566
13001 2010 11 1 186,0800018 141438 134324 16972 11592
C'est comme si qlikview ne lisait que les premières lignes de mon tableau ?
Par ailleurs, et je pense que l'erreur est liée je veux qu'il me fasse un graphique sur plusieurs années mais il ne reconnait que mon année 1999 ?pour un graphique d'évolution de la population c'est pas top ! J'ai essayé de modifier le format de cette cellule dans min fichier source (exel) et ça ne change rien ??? Merci de votre aide
Bonjour,
J'ai trouvé une formule qui marche :
=Max({<Date={*}-{'2009'}-{'2010'}>}pops_pop)/(Min( total if(annee=min(total annee),[pops_pop]))/100)
Par contre je voudrais rajouter à cette formule un favori et là je ne trouve pas où l'insérer surtout dans la partie de formule avec total ????
Merci
Bonjour,
Voilà la formule que j'ai trouvé et qui marche :
Sum(DISTINCT {<NOM_COMM={*},annee_pops={*}-{'2009'}-{'2010'}>}pops_com)
/
Sum({<NOM_COMM={*}>} total if(annee_pops=min(total annee_pops),[pops_com])))*100
soit en simplifiant :
Sum(pops_com)
/
(Sum( total if(annee_pops=min(total annee_pops),[pops_com])))*100