SOMMEPROD chaîne de caractère

Bonjour le forum,

J'écris ce sujet parce que j'ai un problème pour faire un sommeprod sur une chaîne de caractères:

  • en colonne K j'ai des noms de classeurs excel
  • en colonne L j'ai des taux en face de chaque nom de classeur Excel: Taux Forfait/Taux AT
  • en colonne M j'ai des dates en face de chaque taux
Je souhaite compter le nombre de "Taux Forfait" qu'il y'a par mois. Je me sers d'une colonne dynamique puisque le nombre de classeurs Excel n'est pas figé et j'utilise un sommeprod:
col_M=Feuil1!$M$2:INDEX(Feuil1!$M:$M;EQUIV(10^10;Feuil1!$M:$M))
=SOMMEPROD(((MOIS(col_M)&ANNEE(col_M)=MOIS(B3)&ANNEE(B3))*(DECALER(col_M;;-1)="Taux Forfait")*1))*1

Si les données en colonne L et M sont écrites "à la main", la formule marche très bien, mais là ce sont des données importées et j'obtiens 0 quel que soit le taux mis.

Avez une idée de comment faire ? (je mets un exemple en PJ)

Merci à vous et bonne journée

Bonjour,

Malheureusement il serait difficile de vous aider sans voir le vrai fichier.

Cordialement

Bonjour,

Je mets en PJ les différents classeurs, merci !

Re-bonjour,

Le problème est que vous tentez de faire un SOMMEPROD avec un mixe de dates et de "". Changez votre formule en M2 pour:

=SI(K2<>"";INDIRECT("'["&K2&"]Feuil1'!$Q$24");0)

S'il ne vous plait pas d'avoir les "00/01/1900" dans cette colonne, vous pourriez les masquer, soit avec de la MFC, soit avec un format de nombre personnalisé.

Cordialement

Re,

J'ai déjà utilisé un sommeprod de cette façon là sans que àa ne pose de problème. Mon véritable soucis (du moins celui que je vois^^) c'est que les taux ne sont pas comptés, c'est-à-dire savoir combien il y'a de "Taux Forfait" par mois.

Si j'enlève *(DECALER(col_M;;-1)="Taux Forfait")*1) de ma formule, ça me compte le nombre de date qu'il y'a dans le mois.

Si par contre les dates et les taux sont rempli directement sur cette feuille, sans importotation avec des formules le comptage se fait bien. C'est ça que je ne comprend pas.

Est-ce que vous pourriez me donner un ou deux exemples de dates dans la colonne B pour lesquels vous n’obtenez pas le résultat souhaité ?

Cordialement

En fait c'est pour toutes les lignes:

quelque soit la date et le taux que je mets j'obtiens 0 alors que dans mon fichier SOMMEPROD_ChainedeCaractere j'ai "Taux Forfait" pour mm1.xls, mm3.xls et mm4.xls.

J'ai mis les valeurs attendues dans le fichier

Je ne sais pas comment il est possible que vous obteniez les zéros. Moi, j'obtiens les #RÉF! partout dans la colonne C, à cause des formules mauvaises de la colonne L. Si je change:

=SI(K2<>"";INDIRECT("'["&K2&"]Feuil1!$B$55");"") dans L2

pour:

=SI(K2<>"";INDIRECT("'["&K2&"]Feuil1'!$B$55");"")

tout marche bien (alors, j'ai des valeurs non-zéro, même si ce ne sont pas égales à vos résultats souhaites...)

Cordialement

Re,

Désolé, j'ai mal écris la formule. Pour faire plus simple j'ai refait un fichier avec tes remarques adaptées.

Merci de te pencher sur mon problème !

Bonjour,

Une question.

Tous les fichiers sont ouverts?

Cdlt

Bonjour Jean-Eric,

Oui mes classeurs mmX.xls sont ouverts. Je n'ai pas encore installé la macro morefunc (je devrai le faire bientôt d'ailleur) !

Merci

Re-bonjour (et bonjour Jean-Eric),

Désolée, mais je commence à avoir du mal à comprendre. Dans cette version vous avez toujours des "" dans les formules de la colonne M (?)

Cordialement

Re,

Et bien c'est ma faute, j'ai mal compris ce que tu me disais sur les 0 à la place des "".

Maintenant que c'est intégré ça marche et je vois ce que tu veux dire pour lever les 00/01/1990. Le mieux reste de décocher l'option valeur 0 c'est assez pratique.

Merci beaucoup pour ton aide, et d'avoir pris le temps de me répondre.

Je t’en prie et bonne journée!

Rechercher des sujets similaires à "sommeprod chaine caractere"