SommeProd - Heures selon type

Bonsoir à tous,

je sollicite à nouveau votre aide car je me retrouve bloquer devant 2 problèmes.

Je cherche à faire la somme des heures par mois selon le type (véhicule). J’ai tenté d’écrire une formule un peu basique qui semble fonctionner, mais seulement pour le premier mois. Les autres mois renvoient strictement le même résultat.

Mon second soucis est qu’avec sommeprod, je compte les occurences. Je voudrais compter les heures. Je suppose que je dois donc ajouter la colonne F à ma formule mais j’ai un peu de mal à formuler tout ça.

Un peu plus de clarté avec le fichier joint.

Bon dimanche.
MoustikSommeProd - Heure Par Type.xlsx (11,0 Ko)

Bonsoir,

Teste cette formule en K2 sur ton classeur modèle,
et tire à droite et en bas

=SOMMEPROD((ANNEE($A$2:$A$29)=2013)*(MOIS($A$2:$A$29)=COLONNE()-10)*($G$2:$G$29=$J2))

Ensuite pour le calcul des heures et pour avoir un le calcul en ajoutant ou supprimant des lignes,
j’ai nommé dans le gestionnaire de noms, 3 plages pour la date, l’heure et la version

à voir
SommeProd - Heure Par Type.xlsx (13,0 Ko)

Bonsoir;

merci beaucoup pour ton aide. J’ai essayé d’adapter ta formule à mon fichier de base mais j’ai une erreur N/A et je ne saisis pas pourquoi. J’ai simplement remplacé des plages par d’autres plages propres à mon fichier mais je pense que quelque chose cloche.

Pour ma culture personnelle et pour améliorer ma connaissance Excel, la fonction COLONNE sert à quoi exactement ici ?

Bonsoir @Moustik,

Dans le dernier fichier tu peux aussi écrire la formule comme ceci:

En “K2”

=SOMMEPROD((ANNEE(Date)=2013)*(MOIS(Date)=MOIS(1&K$1)*(Version=$J2)))

Tirer vers la droite et vers le bas autant que nécessaire.

@Mimimathy a utilisé la fonction “COLONNE” en “K2” pour obtenir le chiffre 1

Fait un essai, place toi sur une cellule de la colonne “K”, écris =COLONNE() tu obtiendras le chiffre 11, pour la 11ème colonne à cela tu retires -10 donc =COLONNE()-10 et tu obtiens 1

Si tu as déplacé la formule dans une autre colonne, c’est normale que tu es une erreur du style #N/A

Cordialement.

Bonsoir @mdo100,

merci pour cette formule (et l’explication). Je l’ai adaptée sur mon fichier.

Elle marche très bien avec le fichier source que j’ai fourni mais hélas, en l’adaptant sur mon fichier maître, la formule ne marche pas car la mise en forme de la date est différente.

Dans le fichier source, le mois est écrit en toutes lettres (format Standard) tandis que dans mon fichier maître, la date est au format JJ/MM/AA renvoyant le mois de Janvier en lettres. (01/01/2018 donne Janvier).

Je suppose donc que je dois simplement changer un peu la formule de base et notamment la partie

=MOIS(1&$K$1)

J’ai essayé plusieurs variantes mais j’ai toujours un retour “#N/A”.

Bonsoir @Moustik,

Fait un essai en remplaçant: =MOIS(1&$K$1)
Par: =MOIS(K$1)

Cdlt.

Merci.

Malheureusement, cela me retourne toujours une erreur N/A pointant les dates et l’argument.

La formule en question :
=SOMMEPROD((ANNEE(Hours!$A$3:$A$1000)=2018)(MOIS(Hours!$A$3:$A$1000)=MOIS(C$2)(Hours!$O$3:$O$1000=$B$51))*(Hours!$F$3:$F$1000))`

Explication :
`Hours!$A$3:$A$1000`` = plage de dates

C$2 = mois de janvier
Hours!$O$3:$O$1000 = plage où l’on recherche la valeur cible
$B$51 = cellule de la valeur cible
Hours!$F$3:$F$1000 = plage des heures à additionner.

En espérant que cela t’aide.

Re @Moustik,

Ah bon, c’est donc toi qui m’aide :bangbang:

Sache déjà que tu es sur un forum Excel, nous ne traitons pas les images :bangbang:

Cela dit: Essaye avec cette formule reconstituée à défaut d’avoir un fichier sur lequel travailler !

En « C51 »

=SOMMEPROD((ANNEE(Hours!$A$3:$A$1000)=2018)*(MOIS(Hours!$A$3:$A$1000)=MOIS(C$2))*(Hours!$O$3:$O$1000=$B51)*Hours!$F$3:$F$1000)

Cdlt.

1 « J'aime »

Bonsoir @mdo100,

tout d’abord je te remercie pour ta réponse, elle m’a permis de cerner le problème dans mon fichier.
Ta formule était tout à fait correcte, mon problème venait d’une formule dans mon fichier maître qui fait une rechercheV en fonction de l’immatriculation choisie et qui renvoie ensuite la valeur que je cherche à isoler (800W ou MAX8).

Le problème est que ta formule marche parfaitement du moment que ma plage ne contient pas de données vides (rechercheV ne renvoyant pas de données car aucun donnée saisie).
Comme ta formule est très bien, je cherche simplement à renvoyer une valeur 0 ou autre par défaut. J’ai essayé avec la formule SI combinée avec ESTVIDE mais cela ne semble pas fonctionné.

Encore merci pour le temps que tu prends pour m’aider.

SommeProd - Heure Par Type (1).xlsx (15,1 Ko)

Bonsoir @Moustik,

Déjà dans la formule SOMMEPROD pourquoi ajouter à la fin des parenthèses inutiles ?

En “L5” ma formule.

=SOMMEPROD((ANNEE($A$2:$A$29)=$R$1)*(MOIS($A$2:$A$29)=MOIS(L$1)*($H$2:$H$29=$K2))*$F$2:$F$29)

Ou en “L5” la formule de @Mimimathy qui fonctionne aussi.

=SOMMEPROD((ANNEE($A$2:$A$29)=$R$1)*(MOIS($A$2:$A$29)=COLONNE()-11)*($H$2:$H$29=$K2)*$F$2:$F$29)

Ensuite pour la RECHERCHEV

En “H2”

=SIERREUR(RECHERCHEV(G2;bdd!A:E;4;0);0)

Tirer vers le bas autant que nécessaire.

Ton fichier en retour ICI==> Moustik SommeProd - Heure Par Type .xlsx (15,1 Ko)

Cordialement.

1 « J'aime »

Ce sujet a été automatiquement fermé après 30 jours. Aucune réponse n’est permise dorénavant.