index+equiv

Le
Misange
Hello

un truc qui m'agace:
sous xl2002, j'écris la formule suivante (une seule ligne)
=INDEX(mat_nom; EQUIV(INDEX(detcom_mat;
EQUIV(2;detcom_numlignecom;0));mat_code;0))
qui fonctionne nickel

je passe sous 2007
ca fonctionne nickel toujours (vous me direz, encore heureux !)

je repasse sous 2002, contrainte et forcée (no comment)
ça ne fonctionne plus et renvoie #N/A
j'analyse l'erreur :
les plages sont définies comme il faut

si j'évalue moi-même à la main chaque bout de la formule c'est OK :
=INDEX(detcom_mat; EQUIV(1;detcom_numlignecom;0))
me renvoie 3006 comme attendu
et si je tape
=INDEX(mat_nom; EQUIV(3006;mat_code;0))
je récupère truc-machin comme j'attends

Si je demande à excel d'évaluer pas à pas la formule voilà ce qu'il
m'écrit :
=INDEX(mat_nom; EQUIV("3006";mat_code;0))
et là, avec les guillemets autour du 3006 ben ça marche plus !

d'où sortent ces guillemets ? Et comment faire remarcher cette formule ?
C'est d'autant plus agaçant que des formules de ce genre le classeur en
est plein et que c'est la seule qui fait ça
A tous hasard si ça peut vous aider, les données qui remplissent les
plages nommées sont importées à partir d'un fichier texte. J'ai essayé
de changer le format des données mais ça ne change rien.
Merci de vos lumières
Misange
Vidéos High-Tech et Jeu Vidéo
Téléchargements
Vos réponses Page 1 / 2
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
Misange
Le #5289901
bonjour Misange,

à tout hazard, essaie un "Effacer Tout" de cette cellule avant de
retaper la formule,


Bonjour Mon ange
Hélas, même retapée de frais dans une nouvelle cellule ça refait pareil !
Misange

isabelle
Le #5289891
bonjour Misange,

à tout hazard, essaie un "Effacer Tout" de cette cellule avant de retaper la formule,

bon courage,
isabelle

Hello

un truc qui m'agace:
sous xl2002, j'écris la formule suivante (une seule ligne)
=INDEX(mat_nom; EQUIV(INDEX(detcom_mat;
EQUIV(2;detcom_numlignecom;0));mat_code;0))
qui fonctionne nickel

je passe sous 2007
ca fonctionne nickel toujours (vous me direz, encore heureux !)

je repasse sous 2002, contrainte et forcée (no comment)
ça ne fonctionne plus et renvoie #N/A
j'analyse l'erreur :
les plages sont définies comme il faut

si j'évalue moi-même à la main chaque bout de la formule c'est OK :
=INDEX(detcom_mat; EQUIV(1;detcom_numlignecom;0))
me renvoie 3006 comme attendu
et si je tape
=INDEX(mat_nom; EQUIV(3006;mat_code;0))
je récupère truc-machin comme j'attends

Si je demande à excel d'évaluer pas à pas la formule voilà ce qu'il
=INDEX(mat_nom; EQUIV("3006";mat_code;0))
et là, avec les guillemets autour du 3006 ben ça marche plus !

d'où sortent ces guillemets ? Et comment faire remarcher cette formule ?
C'est d'autant plus agaçant que des formules de ce genre le classeur en
est plein et que c'est la seule qui fait ça...
A tous hasard si ça peut vous aider, les données qui remplissent les
plages nommées sont importées à partir d'un fichier texte. J'ai essayé
de changer le format des données mais ça ne change rien.
Merci de vos lumières
Misange


isabelle
Le #5289881
et si tu lui force la main avec un * 1
=INDEX(mat_nom; EQUIV(INDEX(detcom_mat; EQUIV(2;detcom_numlignecom;0))*1;mat_code;0))
est ce que c'est mieux ?

isabelle

bonjour Misange,

à tout hazard, essaie un "Effacer Tout" de cette cellule avant de
retaper la formule,


Bonjour Mon ange
Hélas, même retapée de frais dans une nouvelle cellule ça refait pareil !
Misange



Misange
Le #5289871
et si tu lui force la main avec un * 1
=INDEX(mat_nom; EQUIV(INDEX(detcom_mat;
EQUIV(2;detcom_numlignecom;0))*1;mat_code;0))
est ce que c'est mieux ?


non plus
Misange

Misange
Le #5289851
Impossible de trouver la cause de ce truc ! ce qui est dingue c'est que
j'ai utilisé ce fichier pendant 2 mois sans aucun pb !!!
j'attendrai de récupérer 2007 pour retester, mais d'ici là
1) je reconstruis une autre formule en triturant différemment mes tableaux
2) si quelqu'un a une idée, je suis vraiment intéressée de comprendre ce
qui se passe !
;-)
Misange
MichDenis
Le #5289841
| Si je demande à excel d'évaluer pas à pas la formule voilà ce qu'il
| m'écrit : =INDEX(mat_nom; EQUIV("3006";mat_code;0))
| et là, avec les guillemets autour du 3006 ben ça marche plus !

As-tu vérifié le format de tes plages de cellules ? Est-ce possible
que certaines plages soient au format "texte" plutôt que "Standard" ?
La colonne contenant 3006 est-elle au format "texte" ? Ça expliquerait
le retour de 3006 avec les guillemets...






"Misange"
Hello

un truc qui m'agace:
sous xl2002, j'écris la formule suivante (une seule ligne)
=INDEX(mat_nom; EQUIV(INDEX(detcom_mat;
EQUIV(2;detcom_numlignecom;0));mat_code;0))
qui fonctionne nickel

je passe sous 2007
ca fonctionne nickel toujours (vous me direz, encore heureux !)

je repasse sous 2002, contrainte et forcée (no comment)
ça ne fonctionne plus et renvoie #N/A
j'analyse l'erreur :
les plages sont définies comme il faut

si j'évalue moi-même à la main chaque bout de la formule c'est OK :
=INDEX(detcom_mat; EQUIV(1;detcom_numlignecom;0))
me renvoie 3006 comme attendu
et si je tape
=INDEX(mat_nom; EQUIV(3006;mat_code;0))
je récupère truc-machin comme j'attends

Si je demande à excel d'évaluer pas à pas la formule voilà ce qu'il
=INDEX(mat_nom; EQUIV("3006";mat_code;0))
et là, avec les guillemets autour du 3006 ben ça marche plus !

d'où sortent ces guillemets ? Et comment faire remarcher cette formule ?
C'est d'autant plus agaçant que des formules de ce genre le classeur en
est plein et que c'est la seule qui fait ça...
A tous hasard si ça peut vous aider, les données qui remplissent les
plages nommées sont importées à partir d'un fichier texte. J'ai essayé
de changer le format des données mais ça ne change rien.
Merci de vos lumières
Misange
Misange
Le #5289831
| Si je demande à excel d'évaluer pas à pas la formule voilà ce qu'il
| m'écrit : =INDEX(mat_nom; EQUIV("3006";mat_code;0))
| et là, avec les guillemets autour du 3006 ben ça marche plus !

As-tu vérifié le format de tes plages de cellules ? Est-ce possible
que certaines plages soient au format "texte" plutôt que "Standard" ?
La colonne contenant 3006 est-elle au format "texte" ? Ça expliquerait
le retour de 3006 avec les guillemets...


Salut Denis
C'est ce que je me suis dit mais le fait de passer en format texte,
nombre standard ne change rien. J'ai effacé l'importation de données
pour refaire en vérifiant que j'étais en standard dans la colonne.
J'essaie de faire un mini classeur qui récapitule le pb (on parie que ça
va marcher dans le petit !!!) et j'envoie
Misange

MichDenis
Le #5289821
Un ti supplément : =Equiv(5;plage;0)
si la valeur recherchée 5 n'est pas du même format
que la valeur affichée dans la plage, la formule retourne #n/a




"MichDenis"
| Si je demande à excel d'évaluer pas à pas la formule voilà ce qu'il
| m'écrit : =INDEX(mat_nom; EQUIV("3006";mat_code;0))
| et là, avec les guillemets autour du 3006 ben ça marche plus !

As-tu vérifié le format de tes plages de cellules ? Est-ce possible
que certaines plages soient au format "texte" plutôt que "Standard" ?
La colonne contenant 3006 est-elle au format "texte" ? Ça expliquerait
le retour de 3006 avec les guillemets...






"Misange"
Hello

un truc qui m'agace:
sous xl2002, j'écris la formule suivante (une seule ligne)
=INDEX(mat_nom; EQUIV(INDEX(detcom_mat;
EQUIV(2;detcom_numlignecom;0));mat_code;0))
qui fonctionne nickel

je passe sous 2007
ca fonctionne nickel toujours (vous me direz, encore heureux !)

je repasse sous 2002, contrainte et forcée (no comment)
ça ne fonctionne plus et renvoie #N/A
j'analyse l'erreur :
les plages sont définies comme il faut

si j'évalue moi-même à la main chaque bout de la formule c'est OK :
=INDEX(detcom_mat; EQUIV(1;detcom_numlignecom;0))
me renvoie 3006 comme attendu
et si je tape
=INDEX(mat_nom; EQUIV(3006;mat_code;0))
je récupère truc-machin comme j'attends

Si je demande à excel d'évaluer pas à pas la formule voilà ce qu'il
=INDEX(mat_nom; EQUIV("3006";mat_code;0))
et là, avec les guillemets autour du 3006 ben ça marche plus !

d'où sortent ces guillemets ? Et comment faire remarcher cette formule ?
C'est d'autant plus agaçant que des formules de ce genre le classeur en
est plein et que c'est la seule qui fait ça...
A tous hasard si ça peut vous aider, les données qui remplissent les
plages nommées sont importées à partir d'un fichier texte. J'ai essayé
de changer le format des données mais ça ne change rien.
Merci de vos lumières
Misange
isabelle
Le #5289811
bonjour Misange,

le fait de remettre au format standard ne suffit pas,

tu peut copier une cellule vide (non formater) et fait un collage spécial "addition" sur la plage source contenant le 3006,

isabelle

| Si je demande à excel d'évaluer pas à pas la formule voilà ce qu'il
| m'écrit : =INDEX(mat_nom; EQUIV("3006";mat_code;0))
| et là, avec les guillemets autour du 3006 ben ça marche plus !

As-tu vérifié le format de tes plages de cellules ? Est-ce possible
que certaines plages soient au format "texte" plutôt que "Standard" ?
La colonne contenant 3006 est-elle au format "texte" ? Ça expliquerait
le retour de 3006 avec les guillemets...


Salut Denis
C'est ce que je me suis dit mais le fait de passer en format texte,
nombre standard ne change rien. J'ai effacé l'importation de données
pour refaire en vérifiant que j'étais en standard dans la colonne.
J'essaie de faire un mini classeur qui récapitule le pb (on parie que ça
va marcher dans le petit !!!) et j'envoie
Misange



Misange
Le #5289801
bonjour Misange,

le fait de remettre au format standard ne suffit pas,

tu peut copier une cellule vide (non formater) et fait un collage
spécial "addition" sur la plage source contenant le 3006,


j'ai additionné du vide, multiplié par 1, rien à faire.
Pourtant je pressens bien que c'est de ce côté que ça se passe, le coup
des "" est trop louche !
Misange

Publicité
Poster une réponse
Anonyme