Comptabiliser le nombre de lignes du meme mois

Bonjour,

Je souhaite comptabiliser le nombre de ligne d'un mois dont la valeur de la colonne date max n'est pas atteinte.

Dans le fichier en pièce jointe, je veux trouver le nombre de ligne dans la colonne A qui n'ont atteint la date de la colonne B pour chaque mois de A1 à J1

Si ce n'est pas assez clair n'hésitez pas

Merci pour votre aide.

bàv

Xavier

19test.xlsx (16.53 Ko)

Hello,

Avec un tableau structuré et la formule ci-dessous :

=SOMMEPROD((Tableau1[date1]>=G$1)*(Tableau1[date1]<=FIN.MOIS(G$1;0))*(Tableau1[date max]>Tableau1[date1]))

@+

14test-8.xlsx (20.95 Ko)

Bonjour à tous !

Une approche type formule unique dynamique ?

En E2 :

formule supprimée compte tenu des contraintes nouvellement formulées !

Hello,

Avec un tableau structuré et la formule ci-dessous :

=SOMMEPROD((Tableau1[date1]>=G$1)*(Tableau1[date1]<=FIN.MOIS(G$1;0))*(Tableau1[date max]>Tableau1[date1]))

@+

Hello Baroute,

Merci pour ta réponse rapide, celà fonctionne mais je me rends compte que le filtre du mois pour le calcul de lignes doit se faire soit sur la colonne date 1 ou date 2

20test2.xlsx (18.92 Ko)

, pour la colonne max ca ne change pas si la date du mois est atteinte il ne tient pas compte de la ligne

exemple dans le fichier attaché,

la ligne 190 doit etre comptabilisée pour le mois de mai car elle se trouve dans la colonne A(05/2026) et est inférieure à la date de la colonne C

la ligne 344 doit etre comptabilisée pour le mois de mai car elle se trouve dans la colonne B(05/2026) et est inférieure à la date de la colonne C

Merci

bav

Xavier

Hello,

Quel est le critère différenciant ? Comment on choisi la date1 ou la date2; Sur l'exemple des deux lignes citées, dans un cas c'est le min des 2 valeurs et dans l'autre le max des 2 valeurs de la ligne...

@+

Bonsoir à tous !

Proposition amendée intégrant la nouvelle contrainte à placer en E2 :

formule supprimée compte tenu des contraintes nouvellement formulées !

Bonsoir à tous !

Proposition amendée intégrant la nouvelle contrainte à placer en E2 :

=BYCOL(E1:J1;LAMBDA(col;SOMME(BYROW(A2:C625;LAMBDA(x; OU(FIN.MOIS(--PRENDRE(x;;2);0)=FIN.MOIS(col;0))*(OU(PRENDRE(x;;2)<PRENDRE(x;;-1))))))))

Toujours formule unique dynamique (adapter les plages concernées)

Elle retourne ceci :

C'est valable pour les versions récentes, comment fais-tu pour 2016 par exemple ( pas réussi pour ma part)

Merci :)

Hello,

Quel est le critère différenciant ? Comment on choisi la date1 ou la date2; Sur l'exemple des deux lignes citées, dans un cas c'est le min des 2 valeurs et dans l'autre le max des 2 valeurs de la ligne...

@+

Baroute,

Il s'agit d'une extraction d'un programme externe chaque mois le query de ce programme nous donne les lignes où la date1 ou la date 2 du produit ont la date du mois que l'on souhaite. Si je fais mois par mois je n'ai pas besoin de la colonne trois car je retire dans le query les lignes avec date max atteinte. Le but et de ne faire qu'une seule extraction de 6 mois et je ne sais donc pas sélectionner la date max de chaque mois.

Je n'ai pas idée comment est gérée l'une ou l'autre date dans la colonne 1 ou 2.

Ce que je souhaite c'est qu'il me calcule le nombre totale de ligne qui ont le mois en question peut importe si cette valeur se trouve dans la colonne 1, la colonne 2 ou les deux mais qu'il élimine les lignes qui ont aussi ce mois là dans la colonne 3

Désolé j'aurais du le voir directement qu'il travaillait aussi sur cette colonne pour la comptabilisation

Merci encore

bav

Xavier

Bonsoir à tous !

Proposition amendée intégrant la nouvelle contrainte à placer en E2 :

=BYCOL(E1:J1;LAMBDA(col;SOMME(BYROW(A2:C625;LAMBDA(x; OU(FIN.MOIS(--PRENDRE(x;;2);0)=FIN.MOIS(col;0))*(OU(PRENDRE(x;;2)</prendre(x;;-1))))))))<>

Toujours formule unique dynamique (adapter les plages concernées)

Elle retourne ceci :

image

Bonsoir JFL,

Merci pour votre réponse, il faut que je teste au travail, je suis sur 2016 chez moi et celà ne fonctionne pas.

bav

Xavier

Bonsoir à tous !

Charles Denner dans L'aventure c'est l'aventure : "Notre spécialité ce serait d'être les spécialistes de la clarté dans la confusion...."

Dans le message originel, une des contraintes est exprimée ainsi : ".......(les dates) qui n'ont atteint la date de la colonne B". Traduction : si la date est inférieure à la "date max", la condition est vérifiée. Cette formulation est répétée dans le message de 15:10 (à propos de l'exemple de la ligne 190).

Dans le message de 18:52, la condition évolue..... : "élimine les lignes qui ont aussi ce mois là dans la colonne 3"

Pouvez-vous, au moyen d'un exemple simple mais complet, exposer tous les cas ?

Pour le mois de mai 2026 par exemple,
Date 1 : 15/5/26
Date 2 : 21/6/26
Date max : 31/3/26

La ligne serait validée : Date 1 est dans le mois concerné (mai 2026) et le mois de Date max est différent ( 5<>3)

Par ailleurs, comment doit-on comprendre le "mais qu'il élimine les lignes qui ont aussi ce mois là dans la colonne 3" ?
S'agit-il d'éliminer une ligne sélectionnée si le mois de calcul correspond au mois de la colonne "Date max" ?
S'agit-il d'éliminer une ligne sélectionnée si le mois d'une des dates (date 1 / date 2) correspond au mois de la colonne "Date max" ?
......

Bonjour JF,

Tout d'abord désolé du manque de clarté suite à l'ajout d'une seconde condition.

voici la réponse à vos questions:

La ligne serait validée : Date 1 est dans le mois concerné (mai 2026) et le mois de Date max est différent ( 5<>3) EXACT

Par ailleurs, comment doit-on comprendre le "mais qu'il élimine les lignes qui ont aussi ce mois là dans la colonne 3" ? ELLE NE DOIT PAS ETRE COMPRISE DANS LE TOTAL DE LIGNES COMPTABILISEES
S'agit-il d'éliminer une ligne sélectionnée si le mois de calcul correspond au mois de la colonne "Date max" ? EXACT UNIQUEMENT SI LE MOIS DE CALCUL SE TROUVE DANS DATE 1 ET/OU DATE 2
S'agit-il d'éliminer une ligne sélectionnée si le mois d'une des dates (date 1 / date 2) correspond au mois de la colonne "Date max" ? EXACT

Je vais essayer d'être plus clair voici un exemple

Les lignes à prendre en compte pour le mois en question sont celles dont le mois est présent dans la colonne date1 et/ou la colonne date2 mais pas dans la colonne date max.

date 1date 2date max
31-05-2631-05-2631-05-28ligne a comptabiliser
31-05-2630-11-2430-11-27ligne a comptabiliser
30-11-2631-05-2630-11-29ligne a comptabiliser
31-05-2631-05-2631-05-26ligne a ne pas comptabiliser
30-04-2631-05-2631-05-26ligne a ne pas comptabiliser
31-05-2630-11-2531-05-26ligne à na pas comptablise

J'espère que ceci est plus clair.

N'hésitez pas et merci pour le temps passé à la résolution de mon problème

bàv

Xavier

Bonjour à tous !

Proposition amendée (à tester....!) :

=BYCOL(
    E1:J1;
    LAMBDA(col;
        SOMME(
            BYROW(
                A2:C625;
                LAMBDA(x;
                    OU(FIN.MOIS(--PRENDRE(x; ; 2); 0) = FIN.MOIS(col; 0)) * (TEXTE(col; "aaaamm") <> TEXTE(PRENDRE(x; ; -1); "aaaamm"))
                )
            )
        )
    )
)

Elle retourne ceci :

image

Formule unique dynamique à placer en E2.

EDIT : Formule optimisée.

Bonsoir,

Un grand merci pour votre aide, n'étant pas sur de pouvoir placer la formule dans un autre fichier en faisant référence à un fichier source comprenant mes colonnes dates et ne sachant pas si j'aurais su adapter la formule, j'ai bidouillé un calcul avec des cellules cachées.

Je mets le fichier si ca intéresse qqn

Merci encore pour votre temps passé

bav

Xavier

11test2.xlsx (146.64 Ko)

Bonjour

sans colonnes intermédiaires en colonne E puis tirer la formule

=SOMME((TEXTE($C$2:$C$625;"aamm")<>TEXTE(E$1;"aamm"))*(((TEXTE($A$2:$A$625;"aamm")=TEXTE(E$1;"aamm"))+(TEXTE($B$2:$B$625;"aamm")=TEXTE(E$1;"aamm")))>0))

le principe est de vérifier pour toutes les lignes si le mois n'est pas le même en colonne C et qu'une des colonnes A/B est bien du mois en question (on teste A et B, si la somme >0 alors on est bon)

Sinon une seule formule en colonne E à J peut-être un peu plus simple que celle de JFL

=MAP(
  TEXTE(E1:J1;"aamm");
  LAMBDA(
     x;
     SOMME(
       (TEXTE($C$2:$C$625;"aamm")<>x)*
       (((TEXTE($A$2:$A$625;"aamm")=x)+(TEXTE($B$2:$B$625;"aamm")=x))>0))))

Stéphane

Rechercher des sujets similaires à "comptabiliser nombre lignes meme mois"