Bonjour à tous,
Je dispose d'une base de données Excel comprenant :
- un champ "Sexe" (renseigné par "H" ou "F")
- un champ "Date de naissance" (XXXX)
- un champ "Age" (déduit du champ "Date de naissance") (XX)
Je cherche à faire des sous-totaux (effectif par classes d'âge) en vue de réaliser une pyramide des âges.
Pour cela j'ai tenté de le faire via une formule nb.si.ens contenant 3 paramètres de dénombrement (le sexe, l'âge mini ou la date de naissance maxi, l'âge maxi ou la date de naissance mini), sous cette forme :
B2=NB.SI.ENS(PlageSexe;"H";PlageAge;">=AgeMin";PlageAge;"<=AgeMax")
où AgeMin et AgeMax font référence à la cellule de classes d'âge (ex de contenu : 35-39)
ce qui donne :
AgeMin : >=gauche(A2;2)
AgeMax : <=droite(A2;2)
Sauf que ça ne marche pas car je mets autre chose qu'un nombre derrière mon opérateur de comparaison (>=, >, <= ou <) pour les âges (je fais référence à des cellules et c'est rédhibitoire).
Je peux certes résoudre le problème en rentrant directement les âges en question dans chaque formule. Voici un exemple pour les hommes de la classe d'âge 35-39 ans :
B2=NB.SI.ENS(PlageSexe;"H";PlageAge;">=35";PlageAge;"<=39")
Mais je préférerais automatiser au maximum pour limiter les erreurs de saisie, et donc ne pas avoir saisir les âges dans chaque formule.
Dans ce cas, auriez-vous des idées de rectificatif de ma formule afin qu'elle puisse fonctionner. Ou peut-être une approche VBA pour que je puisse arriver à mes fins ?
En vous remerciant d'avance de vos conseils.
Bien cordialement,