Bonjour,
J'ai un petit souci concernant un calcul au sein d'un formulaire (voir image en pièce jointe).
Plusieurs champs sont présents et doivent être utilisé pour le calcul:
- pop99
- pop06
- solde migratoire apparent 99-06 (SM)
- solde naturel 99 - 06 (SN)
- Taux d'évolution sur la période 99 -06
Ma question est la suivante:
Je cherche à pouvoir introduire une phrase dans le formulaire du type:
" L'évolution démographique de la période 99-06 provient à 58% (par ex) des migrations et à 42% de l'apport naturel".
Le calcul à éxécuter porte sur le 58% et le 42%.
Ainsi j'ai fait un premier essai avec le calul suivant:
SM*100 / (pop06-pop99) : pour la part du solde migratoire
SN*100 / (pop06-pop99) : pour la part du solde naturel
Lorsque j'ai des valeurs positives partout, tout fonctionne normalement dans le cas ou (Pop06 - pop 99) >0 et où SM>0 et SN>0
Cependant une commune peut perdre de la population entre 99 et 2006 (évolution négative) ou une commune peut gagner de la population mais elle peut avoir un SN ou un SM<0.
Ainsi lorsque j'applique ma formule, cela ne fonctionne pas pour les valeurs négatives (...normal!!)
Comme on peut le voir sur la piece jointe:
J'ai 371 hab en 99 et 417 en 2006. Soit une augmentation de 46 habitants.
En revanche il y a 11 personnes qui sont décédées (-11) et 57 personnes qui sont arrivées dans la commune (migration).
Ainsi dans ce cas la formule ne fonctionne pas car cela crée un non sens:
l'augmentation serait du à 23.9% au SN (ce qui est faux) et 123% au SM (...).
Alors qu'il faudrait finalement afficher:
Part du SN dans l'augmentation: 0%
Part du SM dans l'augmentation: 100%
Ainsi avec quelle formule (surement avec condition) je pourrais éviter ce type de problème?
Il faudrait que mon expression fonctionne dans le cas ou toutes les valeurs sont positives, dans le cas où SM <0 , ou dans le cas d'un évolution négative avec pop06-pop99<0 et SN + SM<0.
Je ne sais pas si c'est très clair mais si quelqu'un a compris mon problème et qu'il peut m'aider...
Merci
Partager