Sommeprod avec filtre Excel

Résolu/Fermé
gunbafo Messages postés 55 Date d'inscription jeudi 16 juillet 2009 Statut Membre Dernière intervention 18 février 2011 - 24 janv. 2011 à 12:51
gunbafo Messages postés 55 Date d'inscription jeudi 16 juillet 2009 Statut Membre Dernière intervention 18 février 2011 - 26 janv. 2011 à 12:59
Bonjour,

Je souhaite réaliser un comptage de données selon 2 contraintes de filtre:
- une période de temps qui varie (via userform cf. pièce jointe)
- un critère de sélection

Je n'arrive pas à réaliser une unique formule (avec un =Sommeprod) et je n'ai pas trouvé de problème identique sur d'autres post du forum.
J'ai créer un exemple représentatif de ce que je veux réaliser sur des données confidentiel (c'est pour le boulot).

Merci de traiter sur le fichier joint:
http://www.cijoint.fr/cjlink.php?file=cj201101/cijcZqV2JJ.xls

Merci pour votre aide à tous.


A voir également:

7 réponses

Mytå Messages postés 2973 Date d'inscription mardi 20 janvier 2009 Statut Contributeur Dernière intervention 20 décembre 2016 942
24 janv. 2011 à 12:59
Salut le fotum

Essaye en C5 à recopier vers la droite
=SOMMEPROD(($J$5:$J$19>=$B$1)*($J$5:$J$19<=$B$2)*(K5:K19="x"))

Mytå
0
gunbafo Messages postés 55 Date d'inscription jeudi 16 juillet 2009 Statut Membre Dernière intervention 18 février 2011 3
24 janv. 2011 à 14:06
Merci Myta,

La formule que tu me donnes marche parfaitement pour la période de temps annuelle et Semestre 2 mais pas pour les Semestre 1.
Je retrouve les résultats de l'année (le critère *($J$5:$J$19<=$B$2)* n'est pas fonctionnel!!!

Saurais tu pourquoi?

Merci de ton aide
0
Le Pingou Messages postés 12041 Date d'inscription mercredi 11 août 2004 Statut Contributeur Dernière intervention 22 avril 2024 1 426
24 janv. 2011 à 18:21
Bonjour,
Juste au passage :
.- Dans les cellules B1 et B2 utilisez le même format de date !
Le choix année donne les date 01.01.2010 au 31.12.2010 / correct
Le choix semestre 1 donne : 01.01.2010 au 30.06.2010 / correct
Le semestre 2 donne : 07.1.2010 au 31.12.2010 / la date 07.01.2010 devrait être 01.07.2010
0
Vaucluse Messages postés 26496 Date d'inscription lundi 23 juillet 2007 Statut Contributeur Dernière intervention 1 avril 2022 6 395
Modifié par Vaucluse le 24/01/2011 à 18:29
Bonsoir
curieux, je viens de tester la formule et je trouve qu'elle fonctionne bien quelque soit les dates limites.
par exemple: en K de 1/1/2010 à30/6/2010 je trouve 2 en histoire, 0 en géo, 2 en français et 2 en math?

êtes vous sur d'être sur les bonnes dates en B1 et B2 (surtout les bonnes années)

le problème doit être au niveau du bouton car la formule marche si on entre 30/6 en manuel, mais ne marche plus si on utilise le bouton
crdlmnt
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 303
24 janv. 2011 à 18:31
Bonjour,

La formule de Myta est bonne mais ta macro est fausse car les dates en B2 sont du texte (fais un essai avec esttexte(B2)

en fait une date en VBa est saisie entre # et écrite au format anglophone mm/dd/yyyy; la restitution sur la feuille sera sous la forme fr jj/mm/aaaa
B& est en nombre car dd/mm eet mm/dd sont compatible (jour <13)

If Statistiques.OptionButton2.Value = True Then
     Range("B1") = #1/1/2010#
    Range("B2") = #6/30/2010#
End If


remarque: je n'ai pas ton compris ton
Range("B1").End(xlUp).Offset(0, 0).Select

qui me semble inutile

Vloila, c'est très rare que Myta se trompe
0
Mytå Messages postés 2973 Date d'inscription mardi 20 janvier 2009 Statut Contributeur Dernière intervention 20 décembre 2016 942
24 janv. 2011 à 18:50
Re le forum

Mon format de date étant aaaa-mm-jj, les valeurs affichées pour les dates en B1 et B2
du 2010-07-01
au 31/12/2010

2010-07-01 (Format Date)
31/12/2010 (Format Texte)

Mytå
0
Le Pingou Messages postés 12041 Date d'inscription mercredi 11 août 2004 Statut Contributeur Dernière intervention 22 avril 2024 1 426
Modifié par Le Pingou le 24/01/2011 à 20:54
Bonjour gunbafo,
Note : c'est uniquement la date du début du deuxième trimestre qui est mal transmise par la procédure vous avez 07.01.2010 au lieu de 01.07.2010 (comme je l'ai déjà mentionné au poste 3).
Eh bien voila, dans votre procédure [Private Sub CommandButton1_Click()] vous utilisez cette notation est le problème sera réglé.

Statistiques sur l'année :
Range("B1") = CDate("1/1/2010")
Range("B2") = CDate("31/12/2010")

Statistiques sur le Semestre 1' :
Range("B1") = CDate("1/1/2010")
Range("B2") = CDate("30/6/2010")

Statistiques sur le Semestre 2' :
Range("B1") = CDate("1/7/2010")
Range("B2") = CDate("31/12/2010")

Salutations.
Le Pingou
0
gunbafo Messages postés 55 Date d'inscription jeudi 16 juillet 2009 Statut Membre Dernière intervention 18 février 2011 3
26 janv. 2011 à 12:59
Oui Vaucluse je pense que le problème venait du bouton.

En fait j'ai contourné le problème en paramétrant que 3 dates: 01/01/2010 - 01/07/2010 - 01/01/2011 dans la macro du bouton.
de cette façon et en enlevant le = dans la formule Sommepro($J$5:$J$19>$B$1)* la formule marche bien.

Merci à vous
0