Récuperer valeurs Datées d'une colonne

Bonjour,

Je souhaiterais récupérer le nombre de valeurs d'une colonne en fonction de 2 critères dont l'un est une date.

J'ai crée une liste déroulante et cette dernière fait apparaitre des ANNEES (2020;2019 etc)

En fonction de cette valeur, je voudrais récuperer les données présente sur un tableau dont une de colonne présente des dates.

J'ai mis une formule mais cela ne marche pas.

Pour que ce soit plus clair, je joint un fichier.

Merci.

3test-date.xlsx (534.63 Ko)

Bonjour

Pourquoi pas un TCD avec une segment ?

Pra formule, on ne peut comparer une année et une date : il faut chercher la date entre le 1er janvier et le 31 décembre de l'année

4tcd-an.xlsx (543.71 Ko)

Bonjour,

Je ne souhaites pas un TCD car j'ai d'autres données à récupérer sur de multiples tableaux et cela complique trop les choses d'autant plus que j'ai des pourcentages .

On peut récupérer l'année d'une date, pourquoi ce n'est pas possible de le faire via une liste et formule ?

RE

Je ne souhaites pas un TCD car j'ai d'autres données à récupérer sur de multiples tableaux et cela complique trop les choses d'autant plus que j'ai des pourcentages .

La fonction LIREDONNEESTABCROISDYNAMIQUE permet de synthé2tiser des données de TCD

Mais il est plus que probable que tout cela peut être fait via PowerQuery

Le problème est que tu ne sembles pas avoir de vue d'ensemble de ton projet, et qu'en posant une question par ci, une question par là, tu va sans doute avoir un résultat très hétérogène et donc peu maintenable...

On peut récupérer l'année d'une date, pourquoi ce n'est pas possible de le faire via une liste et formule ?

Je n'ai pas dit que ce n'était pas possible mais que ta formule telle que rédigée ne peut marcher

Soit tu gardes NB.SI.ENS et, comme je l'ai dit, il faut des conditions comparant la dates à une plage allant du début à la fin de l'année, soit il faut passer par SOMMEPROD

Oui je comprends que la Formule ne peux fonctionner avec une DATE entière.

J'ai rajouté une colonne avec la Formule annee() et cela fonctionne pour ce que je veux faire.

Pour le moment, je n'utilise pas POWER QUERY car je crée un TDB qui reunit plusieurs critères.

Et je dois m'adpater en fonction de ceux qui le liront et l'utiliseront et malgré le fait que ce soit plus simple d'utiliser un TCD, je n'arrive pas à obtenir toutes les données que je veux sans passer par POWER QUERY que je ne maitrise pas pour le moment.

Parfoisd, ce n'est pas si simple de bien presenter avec des TCD multiples sur une page sans deformer le reste.

Bref, je débute et j'apprends petit à petit.

Merci à vous

Suite :

J'avoue que j'aurais aimé passer par la SOMME PROD au lieu de rajouter cette colonne…

RE

=SOMMEPROD((ANNEE(TS_DIPLOMES[du])=$B$1)*(TS_DIPLOMES[INTITULE]=A7))

Merçi Chris, je ne comprenais pas le sens de cette formule, elle m'apparaissait illogique mais je vais m'en servir.

Avec la conception du TDB et le groupement de plusieurs mini-tableaux de données, je travaille sur le TCD et je vais devoir me mettre sur POWER QUERY parce que cela bloque sur certains calculs.

Je me demande ce qui ne va pas dans la formule, le resultat est zéro si je mets les années en B1:

=SI ( $B$1="ALL"; NB.SI(CIVILITÉ ; "Mme" ) + NB.SI (CIVILITÉ ; "Mr");

SOMMEPROD((ANNEE(TS_DIPLOMES[du]=$B$1)*(TS_DIPLOMES[CIVILITÉ]="Mme")*(TS_DIPLOMES[CIVILITÉ]="Mr"))))

La colonne CIVILITE comporte soit des Mme ou Mr.

Si je clique sur 2019 je devrais avoir le nombre (ensemble) de Mr et Mme de 2019.

Je plante ou ?

RE

Pour All le plus simple est de ne pas s'occuper le la civiliité...

par ailleurs ta formule indique qu'il faudrait être à la fois Mr et Mme alors qu'on est l'un ou l'autre

* signifie ET

Je ne vois pas, il faut un "OU" mais avec la SOMMEPROD ?

SI($B$1="ALL";NBVAL(TS_DIPLOMES[CIVILITÉ]);

SOMMEPROD(((ANNEE(TS_DIPLOMES[du]=$B$1)*OU(TS_DIPLOMES[CIVILITÉ]="Mme";TS_DIPLOMES[CIVILITÉ]="Mr")))))

Je ne pige pas cette formule de sommeprod, les exemples sont pourtants simples.

Sauf quand les colonnes n'ont pas 2 valeurs possibles comme la mienne.

* veut dire ET , oui mais comment interpreter dans cette formule ?

RE

Comme déjà dit si tu veux les deux ne met pas de critère, c'est un calcul inutile d'autant que SOMMEPROD est une formule gourmande en ressources

Sinon principes :

Equivalent NB.SI.ENS

mettre chaque condition entre () ce qui fait (( au début et )) à la fin et séparer les conditions par

des * si elles sont cumulatives (ET)

des + si elles sont alternatives (OU)

si une seule condition multiplier par 1

Equivalent SOMME.SI.ENS

Après les conditions ajouter un ; puis la plage à "SOMMER"

Dans la majorité des cas les plages doivent avoir la même taille

Oui mais ce sera pas possible d'utiliser la DATE pour récupérer l'année.

La formule SOMMPROD marche impeccable avec les critères multiples mais pas lorsqu'il y a 2 possibilité dans la même cellule comme c'est le cas avec Mr Mme

SOMMEPROD((ANNEE(TS_DIPLOMES[du])=$B$1)*(TS_DIPLOMES[INTITULE]=A7))

Ca marche impeccable

SOMMEPROD((ANNEE(TS_DIPLOMES[du])=$B$1)*(TS_DIPLOMES[CIVILITE]=AVOIR MR ET Mme compris

Cela ne marche pas.

Avec les FORMULES NB.SI ENSEMBLE, je dois créer une colonne avec suelement l'année dedans, ce que je voulais éviter depuis le début.

Bref, je vous remercie bien.

SI($B$1="ALL";NBVAL(TS_DIPLOMES[CIVILITÉ]);SOMMEPROD((ANNEE(TS_DIPLOMES[du])=$B$1)+(TS_DIPLOMES[CIVILITÉ]="Mr")*(TS_DIPLOMES[CIVILITÉ]="Mme")))

C'était cela !

Merci pour les principes mais comme je m'intéresse beaucoup à ce que je fait, j'aurais aimé savoir s'il fallait obligatoirement ajouter une colonne qui convertit la DATE en ANNEE pour utiliser les formules NB.SI.ENS.

OUi effectivemeent, c'est gourmand la fonction SOMMEPROD...

Pour All le plus simple est de ne pas s'occuper le la civiliité...

C'est quoi la meilleure solution ?

RE

Si tu veux TOUT qu'importe la civilité donc pose tes autres critères seulement

Si tu avais 3 civilités (par exemple Melle et Mme et pas Mr ) et soit Femme, soit Hommes en B2 :

=SI($B$2="Femmes";SOMMEPROD((ANNEE(TS_DIPLOMES[du])=$B$1)*((TS_DIPLOMES[Civilité]="Mlle")+(TS_DIPLOMES[Civilité]="Mme")));SOMMEPROD((ANNEE(TS_DIPLOMES[du])=$B$1)*(TS_DIPLOMES[Civilité]="Mr")))
Rechercher des sujets similaires à "recuperer valeurs datees colonne"