Excel fonction RECHERCHE

Fermé
photon - 29 juin 2011 à 11:23
pierrot_42 Messages postés 36 Date d'inscription jeudi 23 juin 2011 Statut Membre Dernière intervention 8 décembre 2022 - 30 juin 2011 à 16:28
Bonjour à tous !

Je cherche à faire une opération qui me paraissait relativement simple sur Excel, mais là j'avoue que je bloque un peu (je suis débutant). Je dois faire une mauvaise utilisation de la fonction RECHERCHE ...

Je vous explique mon problème :

J'ai dans mon fichier une feuille "chantiers" et une feuilles "taches".
A chaque tâche est associé un numéro au format 1.1; 1.2; 2.1 ; 2.2; 2.3 etc. (donc un tableau à 2 colonnes : nom de tâche et num. de tâche)

et une seconde feuille, "chantiers" qui liste les noms des chantiers et associe à chaque chantier la ou les taches qu'il englobe. (encore un tableau à 2 colonnes)

Je désire rajouter dans la feuille "taches" une 3ème colonne qui précise si la tâche est contenue dans un chantier ou non.

Mon idée était donc, avec la fonction RECHERCHEV, de récupérer le num. de la tâche, trouver ce numéro dans le tableau chantier (ou non si la tâche n'est pas associée à un chantier) et dans le cas ou un chantier est associé renvoyer son nom.

J'espère avoir été clair, voici un fichier simplifié sur lequel je fais mes tests :

http://www.cijoint.fr/cjlink.php?file=cj201106/cijyZBRe8E.xlsx

Voilà si quelqu'un a une idée, son aide sera grandement appréciée ^^

Merci beaucoup.


3 réponses

Vaucluse Messages postés 26496 Date d'inscription lundi 23 juillet 2007 Statut Contributeur Dernière intervention 1 avril 2022 6 418
Modifié par Vaucluse le 29/06/2011 à 11:40
Bonjour
votre fichier ici:
http://www.cijoint.fr/cjlink.php?file=cj201106/cijxDL0mFX.xls

quelques remarques:
A)_Vous ne pouvez pas utiliser la fonction RECHERCHEV car la valeur cherchée est dans la 2° colonne du champ.RECHERCHEV ne cherche que dans la 1° colonne d'un champ.
ce code est remplacé dans le fichier par la combinaison: INDEX(EQUIV)
B)_ certain N° de chantier sont plusieurs dans la même ligne, il est donc nécessaire de préciser au code EQUIV qu'il faut trouver la valeur cherchée parmi plusieurs valeurs d'une même cellule.
d'ou l'écriture:
"*"&cellule&"*"
C) pour éviter un affichage parasite de #/NA lorsque le code tache n'existe pas dans la colonne B chantier, la condition NB.SI en tête de formule:
_cherche si le code est présent dans la colonne chantier B
_renvoie 0 si le code n'existe pas
_sinon applique la, formule.
vous pouvez remplacer le 0 par un texte entre guillemets, par exemple:
"pas de chantier"
qui s'affichera si le N° de tache n'est pas présent dans la liste chantier.

crdlmnt


Demandons nous si nous ne sommes pas seuls à comprendre ce que l'on explique?
1
Bonjour Vaucluse,

Merci beaucoup pour votre réponse très complète et très claire !
La solution du INDEX(EQUIV) permet effectivement de traiter mon problème.

Le seul "soucis" qui persiste est que certaines tâches sont traitées dans plusieurs chantiers. (par exemple la tâche 3.2 est traitée dans les chantiers 11, 21 et 22)
Or je ne crois pas qu'il soit possible, avec cette méthode, de poursuivre la recherche après que la première valeur ait été trouvée.

Sauriez-vous comment corriger ça ?

Dans tous les cas, merci encore pour votre réponse.
0
Raymond PENTIER Messages postés 58777 Date d'inscription lundi 13 août 2007 Statut Contributeur Dernière intervention 24 décembre 2024 17 258
30 juin 2011 à 03:08
"je ne crois pas qu'il soit possible, avec cette méthode, de poursuivre la recherche après que la première valeur ait été trouvée" : ce n'est d'ailleurs pas non plus le cas avec RECHERCHEV, ni avec RECHERCHEH, ni avec RECHERCHE ...
0
Vaucluse Messages postés 26496 Date d'inscription lundi 23 juillet 2007 Statut Contributeur Dernière intervention 1 avril 2022 6 418
30 juin 2011 à 07:16
Bonjour mon ami Raymond.
Et pourtant on y arrive, regardes le fichier joint à mon dernier message.!!!!
crdlmnt
0
Vaucluse Messages postés 26496 Date d'inscription lundi 23 juillet 2007 Statut Contributeur Dernière intervention 1 avril 2022 6 418
29 juin 2011 à 16:45
Re
regardez ici si cela convient, c'est beaucoup moins simple.

http://www.cijoint.fr/cjlink.php?file=cj201106/cijahdzvCn.xls

revenez si besoin d'explications, mais un peu plus tard parce que là je suis à la bourre:-)

Pour augmenter le nombre de chantiers disponibles, ,tirez la formule vers la droite et dans le code NB.SI, remplacez la valeur >x par la valeur suivante
tirez ensuite la formule vers le bas

(exemple:ici on va jusqu'à 5 donc la suivante est >6)

crdlmnt
0
gbinforme Messages postés 14946 Date d'inscription lundi 18 octobre 2004 Statut Contributeur Dernière intervention 24 juin 2020 4 712
30 juin 2011 à 09:33
Bonjour Vaucluse,

Jolie formule pour résoudre la recherche multiple, qui n'est pas spécialement simple par formule sur excel.

Si je puis me permettre, je te suggère de remplacer ">1" en D2 par "">COLONNE()-3" ce qui permet d'étendre la formule sur toute la plage sans modification.

Bonne journée à toi.
0
Vaucluse Messages postés 26496 Date d'inscription lundi 23 juillet 2007 Statut Contributeur Dernière intervention 1 avril 2022 6 418
30 juin 2011 à 10:09
Bonjour gb

exact la proposition.
J'y pense, mais je ne le place pas car je crains que ce soit un peu plus complexe pour l'utilisateur d'ajuster si l"adaptation a un autre type de tableau lui est nécessaire.

Mais c'est effectivement la solution pour avoir une formule qui ne nécessite pas d'intervention après copie.

Pour l'utilisateur, on va préciser que le code COLONNE()-3 donne le N° de colonne dans la feuille (donc 4 en colonne D) diminué de 3
=1 en colonne 4,2 en colonne 5 etc...


Bien amicalement
0
Bonjour à tous,

Vaucluse je vais utiliser ta solution en remplaçant effectivement le ">1" par ">COLONNE()-3" comme l'a proposé gbinforme.

Merci à tous et tout particulièrement à Vaucluse ;) Je n'aurais pas trouver ça tout seul ^^
0
pierrot_42 Messages postés 36 Date d'inscription jeudi 23 juin 2011 Statut Membre Dernière intervention 8 décembre 2022
30 juin 2011 à 16:27
Hello à tous, j'aime bien vos idées,
moi j'avais pensé à ça :

http://www.cijoint.fr/cjlink.php?file=cj201106/cijJcm0s9B.xlsx

0
pierrot_42 Messages postés 36 Date d'inscription jeudi 23 juin 2011 Statut Membre Dernière intervention 8 décembre 2022
30 juin 2011 à 16:28
ps tu peux masquer la colonne C si tu veux, c'est plus joli
0