Nb de ligne répondant à un critère par mois

Fermé
occhibelli Messages postés 3 Date d'inscription lundi 18 février 2008 Statut Membre Dernière intervention 18 février 2008 - 18 févr. 2008 à 11:04
 Occhibelli - 21 févr. 2008 à 16:54
Bonjour,
C'est la première fois que je teste ce forum.
Voici ce que je souhaite obtenir :
J'ai un tableau excel venant d'une requète MS QUERY
Les lignes de ce tableau sont des travaux réalisés.
Les colonnes qui m'interessent sont celles des sociétés et de la date de fin de travaux.
Je voudrais pouvoir sortir l'ensemble des travaux (donc compter les lignes) pour une société donnée durant un mois donné.
La seule façon que j'ai trouvé de compter les lignes par mois est celle-ci :
=NB.SI(P:P;">=01/01/2008")-NB.SI(P:P;">=31/01/2008")
et pour compter les lignes de l'équipe X, j'ai :
=NB.SI(I:I;"=X")
et maintenant j'aimerais avoir le nombre de ligne de X pour le mois de janvier.
Pourriez-vous m'aider?
Merci
A voir également:

12 réponses

michel_m Messages postés 16603 Date d'inscription lundi 12 septembre 2005 Statut Contributeur Dernière intervention 16 décembre 2023 3 310
18 févr. 2008 à 12:01
bonjur,
essaies:
=sommeprod((I1:I2000="X")*(P1:P2000>=01/01/2008)*(P1:P2000<=31/01/08)*1)

1/non testé (je crains une vach.. au niveau des dates
2/ sommeprod n'admet pas de colonnes entières
3/ attention à MS query, si à l'actualisation le nombre de lignes est inférieur: mettre les cette formule dans un autre onglet

Cordialement,
Michel

edit 12:10: d'où vient la source avec MSquery? si c'est access, il faut peut-être mettre les dates entre guillemets
0
occhibelli Messages postés 3 Date d'inscription lundi 18 février 2008 Statut Membre Dernière intervention 18 février 2008
18 févr. 2008 à 13:56
Merci pour la formule,
j'ai essayé de l'insérer dans mon tableau mais le résultat donné est '0' pourtant ce n'est pas le résultat attendu.
J'ai changé la formule car je vais chercher les infos dans une autre feuille du même document;
=SOMMEPROD((equipe!I1:I40000="X")*(equipe!P1:P40000>=1/1/2008)*(equipe!P1:P40000<=31/1/8)*1)
La source de MS QUERY est une base ORACLE;
Je ne comprends pas la troisième remarque, est-ce que cela veut dire que la formule ne fonctionnera pas si certaines lignes sont vides?
En tout cas merci pour le temps que tu m'as accordé.
0
occhibelli Messages postés 3 Date d'inscription lundi 18 février 2008 Statut Membre Dernière intervention 18 février 2008
18 févr. 2008 à 17:04
Avec une partie de la formule, cela fonctionne,
si je prends
SOMMEPROD((equipe!I1:I40000="X")*(equipe!P1:P40000>=1/1/2008)*1)
ou
SOMMEPROD((equipe!I1:I40000="X")*(equipe!P1:P40 000<=31/1/8)*1)
j'obtiens bien le résultat lié à ces formules par contre dès que je mets la condition 2 et 3 ensemble, cela me donne 0...
HELP !
0
michel_m Messages postés 16603 Date d'inscription lundi 12 septembre 2005 Statut Contributeur Dernière intervention 16 décembre 2023 3 310
18 févr. 2008 à 19:01
Bonsoir,

voilà ce que j'ai fait en désespoir de cause (je chrche depuis 3/4 heure...)

sur ma maquette (zone A1:B10)j'ai mis la date de fin en F2 et la date de début en E2

=SOMMEPROD((A1:A10="X")*(B1:B10<=F2)*(B1:B10>E2))

et ca marche; pourquoi? bin chaispas!!!

A te lire

Michel
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
michel_m Messages postés 16603 Date d'inscription lundi 12 septembre 2005 Statut Contributeur Dernière intervention 16 décembre 2023 3 310
18 févr. 2008 à 19:06
Re,

Que je suis C...

Si on veut l'équipe X du mois de janvier

=SOMMEPROD((A1:A10="X")*(MOIS(B1:B10)=1))

Bonne soirée
0
Je te remercie de prendre de ton temps pour mon problème,
La formule ne fonctionne pas, je l'ai changé pour l'adapté à mon besoin :
=SOMMEPROD((equipe!I1:I35630="X")*(MOIS(equipe!P1:P35630)=1)) au début j'avais mis I;I et P;P mais il me mettait #NOMBRE donc je l'ai changé en ce qui est écris mais il me met maintenant #VALEUR...
De plus, dans mon tableau, j'ai différentes dates en janvier (2004, 2005, 2006, 2007, 2008) donc cette formule risque de me remonter l'ensemble des mois de janvier de toutes ces années?
Sais -tu s'il existe une formule du genre MOISANNEE()=1;1?
0
michel_m Messages postés 16603 Date d'inscription lundi 12 septembre 2005 Statut Contributeur Dernière intervention 16 décembre 2023 3 310
20 févr. 2008 à 16:53
Je regarderai ce soir ou demain;
j'utilise office 2000/ xp
ma maquette fonctionnait (c'est chez moi et je suis au boulot)
Il serait intéressant que tu mettes un extrait de ton classeur (quelques lignes sans données confidentielles) en Pièce jointe en utilisant le site www.cjoint.com

A+
Michel
0
Rebonjour,
Je pense que la formule ne fonctionne pas avec un fichier qui se met à jour et avec des dates. Du coup j'ai changé mon approche, j'ai utilisé MOIS() et ANNEE() sur la colonne date à côté du tableau puis j'ai utilisé cette formule
=SOMMEPROD((equipe!$I$1:$I$15000="X")*(equipe!$Q$1:$Q$15000=1)*(equipe!$R$1:$R$15000=2008))
pour ressortir le nombre de X au mois de janvier 2008.
https://www.cjoint.com/?curNaIrx56
Merci de ton aide.
A+
0
michel_m Messages postés 16603 Date d'inscription lundi 12 septembre 2005 Statut Contributeur Dernière intervention 16 décembre 2023 3 310
21 févr. 2008 à 12:03
Bonjour,

J'ai eu une erreur 404 sur ton lien cjoint...

A+
0
Voici le lien, j'espère que cette fois cela va fonctionner.
https://www.cjoint.com/?cvoEiUMh6e
0
tompols Messages postés 1273 Date d'inscription jeudi 29 juillet 2004 Statut Contributeur Dernière intervention 25 novembre 2013 435
21 févr. 2008 à 15:59
Salut,

Question bete, prouquoi ne pas utiliser MS QUERY et faire un count() ds ta base Oracle ????
genre :
select month(date fin de travaux), société, count(travaux)
where [date fin de travaux] >= 01/01/2008
and [date fin de travaux] <= 31/12/2008
group by month(date fin de travaux), société

Tom
0
xkristi Messages postés 4264 Date d'inscription lundi 18 décembre 2006 Statut Membre Dernière intervention 19 août 2022 564
21 févr. 2008 à 16:06
Salut !
Pour n'avoir aucun problème de date
je crée 2 colonnes supplémentaire l'une pour l'année , l'autre pour le mois
annee mois
20/02/2008 2008 2
=ANNEE(A2) =MOIS(A2)
recopie incrémentée sur toutes les lignes

et ensuite tu peux faire ce que tu veux ...
les tableaux croisés dynamiques offrent plein de possibilités

note que ton lien ne fonctionne pas !!!


0
Merci à vous trois,
je laisse tomber le lien vers mon fichier,
mais je garde les idées et j'essayerai de m'en sortir avec.
Bonne après-midi à Michel, à tompols et à xkristi.
0