Problème avec la fonction cherche

Fermé
Akon93 - Modifié par Akon93 le 12/08/2013 à 17:49
tontong Messages postés 2563 Date d'inscription mercredi 3 février 2010 Statut Membre Dernière intervention 17 octobre 2024 - 13 août 2013 à 14:54
Bonjour,

Je dois faire une rechercheV avec deux critères. Pour cela je souhaite utiliser la fonction SOMMEPROD.
un de mes critère est du texte, et je ne connais qu'une partie de ce texte du coup j'utilise la fonction cherche. J'avais fait cette macro il y a un mois, elle marchait j'en suis certian, mais aujourd'hui elle ne marche plus et quand je tape manuellement directement la formule sur excel ça ne marche pas non.
la matrice de donnée et la donnée à chercher ne sont pas sur le même fichier.

Illustration simple de mon problème
En gros j'ai une matrice de donnée qui ressemble à ça (par exemple ecrit sur A1 à A4)
produit 123 blabla
produit 126 blabla2
produit 451 blabla
produit 417

moi j'ai sur un autre fichier par exemple dans une cellule la donnée (par exemple ecrit en B1) : *126* (si je remplace cette valeur par "produit 123 blabla" par exemple ça ne fonctionne pas non plus)
Quand je fais =cherche(B1;'[Classeur2.xlsm]'!$A$1:$A$4) j'ai aussi essayé avec =cherche(B1;'[Classeur2.xlsm]'!$A$1:$A$4,1) mais c'est pas mieux
Quand je clique sur le "!" et "afficher les étapes du calcul" ça me met #VALEUR! au niveau de '[Classeur2.xlsm]'!$A$1:$A$4
Bien évidemment les deux fichiers font plusieurs milliers de ligne mais c'est pour donner un exemple simple qui ne marche pas non plus

Sinon la formule entière est la suivante :
=SOMMEPROD((A4='[classeur2.xlsm]Suivi Prev'!$B$5:$B$1357)*ESTNUM(CHERCHE(E4;'[classeur2.xlsm]Suivi Prev'!$D$5:$D$1357))*'[Classeur2.xlsm]Suivi Prev'!$AU$5:$AU$1357)

NB : le fichier contenant la matrice de donnée est ouvert en lecture seule.


Avez-vous une idée sur la question ?
j'insiste sur le fait (certes très étrange) que la macro a déjà parfaitement marché auparavant et n'a a priori pas été modifiée.

Merci d'avance pour votre précieuse aide !

3 réponses

Le Pingou Messages postés 12177 Date d'inscription mercredi 11 août 2004 Statut Contributeur Dernière intervention 31 octobre 2024 1 448
12 août 2013 à 22:30
Bonjour,
Il serait plus simple de comprendre si vous mettez les 2 classeurs dans un ZIP et mettre ce dernier sur https://www.cjoint.com/ et poster le lien !

0
bonjour,
malheureusement je suis au boulot et pour des raisons de confidentialités je ne suis pas en droit de diffuser ces fichiers. Clairement je sais que ça n'aide pas mais je n'ai pas le choix :(
0
des avis ?
0
tontong Messages postés 2563 Date d'inscription mercredi 3 février 2010 Statut Membre Dernière intervention 17 octobre 2024 1 058
13 août 2013 à 14:54
Bonjour,
1- Pour utiliser Cherche() il est préférable de ne pas utiliser les caractères de remplacement. En B1 saisir 123 et non pas *123*.

2- Dans la formule entière =SOMMEPROD((A4='[classeur2.xlsm]Suivi Prev'!$B$5:$B$1357)*ESTNUM(CHERCHE(E4;'[classeur2.xlsm]Suivi Prev'!$D$5:$D$1357))*'[Classeur2.xlsm]Suivi Prev'!$AU$5:$AU$1357)
j'aurais volontiers ajouté quelques parenthèses.

3- Pour fractionner le problème il serait pratique de vérifier la formule dans le fichier de données ou dans une feuille obtenue par copier/coller.
0