Erreur sur Fonction SOMME.SI.ENS

Bonjour à tous

Novice en Excel, j'essaye de monter une formule pour extraire des données journalières pour une année et un mois donné

J'ai un onglet 'Consommation journalière' avec des relevés journaliers :

excel 1

J'ai un onglet 'Consommation mensuelle' avec un récapitulatif par année et mois :

excel 2

Dans la cellule C6, j'ai mis la formule suivante :

=SOMME.SI.ENS('Consommation journalière'!D643:D1099;'Consommation journalière'!A654:A1099;">="&DATE('Consommation mensuelle'!A6;'Consommation mensuelle'!B6;1);'Consommation journalière'!A654:A1099;"<="&FIN.MOIS(DATE('Consommation mensuelle'!A6;'Consommation mensuelle'!B6;1);0))

Excel me sort une erreur "Le type de données d'une valeur utilisée dans la formule est incorrect"

La colonne A de l'onglet 'Consommation journalière' est est typée "Date"

Les colonnes A et B de l'onglet 'Consommation mensuelle' sont typées "Nombre"

En debuggant la formule, il apparait :

- que l'évaluation des dates début et fin de mois fonctionne correctement : les dates apparaissent sous forme numérique (44866 et 44895)

- que c'est l'évaluation de la fonction SOMME.SI.ENS qui plante :

excel 3

Si quelqu'un a une idée ou une autre méthode à proposer...

Question subsidiaire : dans les formules où on exprime des colonnes sous forme de plages, est-il possible d'exprimer que la plage concerne toutes les lignes de la colonne ?

Merci d'avance pour votre aide

Christophe

Bonsoir,

la colonne des dates de l'onglet "consommation journalière" est aligné centré, supprimez cette alignement et regardez si par "défaut" cela s'aligne à droite ou à gauche : si à droite c'est une date, si à gauche c'est un texte c'est ce qui provoque l'erreur...

@ bientôt

LouReeD

Bonjour,

Attention aux plages sélectionnées:

=SOMME.SI.ENS('Consommation journalière'!D643:D1099;'Consommation journalière'!A654:A1099;">="&DATE('Consommation mensuelle'!A6;'Consommation mensuelle'!B6;1);'Consommation journalière'!A654:A1099;"<="&FIN.MOIS(DATE('Consommation mensuelle'!A6;'Consommation mensuelle'!B6;1);0))

Cdlt

Bonjour à tous !

et....

De l'intérêt de joindre un classeur représentatif et non une image......

Bonjour à tous,

Arturo83 !

je n'ai pas fait attention à ceci n'y même au fait que l'évaluation de la formule modifie bien les dates en chiffres !

Je rejoins JFL sur sa remarque, bien qu'il est vrai que quelque fois on peut s'en passer

@ bientôt

LouReeD

Bonjour à tout et merci pour vos premières contributions.

J'espérais avoir été clair dans la mise en contexte et la question posée.

Pour vous aider dans votre réflexion, voici un extrait du fichier, avec la formule qui pose problème.

A vos suggestions !

8analyse-conso.xlsx (46.75 Ko)

Bonjour à tous !

Une proposition formule unique et dynamique en C6 :

=LET(p_C;'Consommation journalière'!D6:E1099;p_D;'Consommation journalière'!A6:A1099;BYCOL(FILTRE(p_C;(ANNEE(p_D)=A6)*(MOIS(p_D)=B6));LAMBDA(c;SOMME( c))))

Super, merci !, Je vais adopter ta proposition.

Si quelqu'un peut, pour ma culture générale, m'expliquer la raison de l'erreur originale...

Et la question subsidiaire : comment exprimer une plage sans fin (par exemple, colonne A pour les lignes 10 et suivantes) ?

Christophe

Bonsoir à tous !

Si quelqu'un peut, pour ma culture générale, m'expliquer la raison de l'erreur originale...

Et la question subsidiaire : comment exprimer une plage sans fin (par exemple, colonne A pour les lignes 10 et suivantes) ?

1/ Arturo83, dans son message, expliquait l'incohérence (longueurs des plages différentes)
2/ Il faudrait créer un tableau structuré.

Je vous remercie de ce retour.

Bonsoir,

JFL m'a devancé .

Voici votre fichier avec un tableau structuré,

la formule en C6 devient:

=SOMME.SI.ENS(Tableau1[HC2];Tableau1[Date];">="&DATE($A6;$B6;1);Tableau1[Date];"<="&FIN.MOIS(DATE($A6;$B6;1);0))

et en D6:

=SOMME.SI.ENS(Tableau1[HP3];Tableau1[Date];">="&DATE($A6;$B6;1);Tableau1[Date];"<="&FIN.MOIS(DATE($A6;$B6;1);0))

le fichier

Cdlt

Un grand merci pour votre implication !

Rechercher des sujets similaires à "erreur fonction somme ens"