Excel fonction si(...equiv(

Résolu/Fermé
icudelouest Messages postés 28 Date d'inscription mardi 29 avril 2008 Statut Membre Dernière intervention 4 janvier 2011 - 29 avril 2008 à 12:52
 icudelouest - 5 mai 2008 à 12:24
Bonjour,

Je consulte régulièrement ce forum car en général j'y trouve les réponses à mes questions, mais là après plusieurs jours de recherche, je désespère...

J'ai une liste d'établissements sur excel. Les utilisateurs doivent pouvoir rechercher le nom d'un établissement en saisissant les 3 codes qui constituent l'identifiant de l'établissement. En colonne A j'ai "RO", colonne b "centre" et colonne c "caisse". Il y a des établissement qui ont le même n° centre, d'autres le même n° caisse mais jamais les 2. Sur une 2ème feuille du classeur je veux pouvoir afficher le nom de l'établissement en saisissant ces 3 codes. J'ai essayé avec des recherchev, index(equiv( mais je n'y arrive pas. Le problème c'est que pour certains ça fonctionne mais il y a des codes qu'Excel de trouve pas...Je sais pas si je suis très claire, ma 2ème feuille se présente comme suit:

RO: à saisir
centre: à saisir
caisse: à saisir
établissement: il faut que le nom de l'établissement correspondent ET au centre ET à la caisse

Si je m'exprime mal dites moi, je me réexpliquerai mais aidez-moi please!
Merci d'avance!
A voir également:

10 réponses

michel_m Messages postés 16603 Date d'inscription lundi 12 septembre 2005 Statut Contributeur Dernière intervention 16 décembre 2023 3 310
2 mai 2008 à 09:08
Bonjour,

J'avais prévu de te répondre sur la question des ordis lundi car je ne suis pas au boulot (ouacances "médicales") et je ne dispose pas d'autres bip-bip; ca marche sur des cellules verrouillées et protégées.

MIN, MAX?

aucune importance car le résultat renvoie une valeur unique.

pourquoi utiliser MIN ou MAX?
La formule matricielle parcourt verticalement, haut vers bas, toutes les lignes ( 2 à 2600) de chaque colonne et chaque fois que les 3 conditions sont vérifiées, elle renvoie le numéro de la ligne (elle ne sait pas combien il y a de conditions vérifiées), la fonction MIN permet de fixer la réponse sur la première ligne rencontrée c'est à dire ici la valeur mini du numéro de ligne (MAX sur la dernière si on avait 2 conditions vérifiées avec 2 lignes de formules); sinon , sans MIN ou MAX, la matricielle renvoie "VALEUR" ( ce qui équivaut à " Et qu'est que j'en fait de ton numéro de ligne?").

Pour vérifier les conditions (tu le sais peut-être, excuses moi), les formules matricielles n'aiment pas le ET et le OU. Il faut donc utiliser les opérateurs booléens: la multiplication équivaut au ET, l'addition au OU.

Voilà. les formules matricielles sont très lentes et il faut évaluer à chaque fois qu'il y a de nombreuses données si une macro ne serait pas plus rapide (j'ai eu le cas avec les 36000 communes francaises)

En espérant que ce sera un peu + clair pour toi,

Amicalement,
Michel
1
Bonjour,

Et bien je ne savais pas tout ça! Je te remercie beaucoup de tes explications! Tout fonctionne à merveille!

Amicalement,
Lucie
0
michel_m Messages postés 16603 Date d'inscription lundi 12 septembre 2005 Statut Contributeur Dernière intervention 16 décembre 2023 3 310
29 avril 2008 à 13:13
Bonjour,

Oui, réexplique parce que...

et mieux, mets aussi ton fichier sans données confidentielles en pièce jointe avec
www.cjoint.com

Michel
0
icudelouest Messages postés 28 Date d'inscription mardi 29 avril 2008 Statut Membre Dernière intervention 4 janvier 2011
29 avril 2008 à 14:17
Voilà, normalement j'ai bien mis le fichier. Sur la feuille "rechercheRO" je veux saisir les code RO, caisse et centre. Avec ces codes je veux qu'excel affiche l'intitulé du centre.
Pour l'instant j'ai réussi à gruger en concatenant les 3 colonne (A,B,C) et faire une recherche sur le code concatener mais bon j'aimerais pouvoir le faire sans ça.

MErci de ton aide!

https://www.cjoint.com/?eDooDLGssU
0
michel_m Messages postés 16603 Date d'inscription lundi 12 septembre 2005 Statut Contributeur Dernière intervention 16 décembre 2023 3 310
29 avril 2008 à 14:31
Désolé, je ne lis pas les compressions "rar" si tu peux passer en "zip"...
0
icudelouest Messages postés 28 Date d'inscription mardi 29 avril 2008 Statut Membre Dernière intervention 4 janvier 2011
29 avril 2008 à 14:58
0
michel_m Messages postés 16603 Date d'inscription lundi 12 septembre 2005 Statut Contributeur Dernière intervention 16 décembre 2023 3 310
29 avril 2008 à 16:03
re,

proposition avec une "petite formule matricielle" où il faut rester zen..

https://www.cjoint.com/?eDqcgsEtFe

Michel
0
chtilou Messages postés 1696 Date d'inscription mardi 22 janvier 2008 Statut Membre Dernière intervention 30 avril 2012 523
29 avril 2008 à 16:14
Bijour tout le monde.
Regardes ici pour les explications:
https://support.microsoft.com/fr-fr/help/465704
0
michel_m Messages postés 16603 Date d'inscription lundi 12 septembre 2005 Statut Contributeur Dernière intervention 16 décembre 2023 3 310 > chtilou Messages postés 1696 Date d'inscription mardi 22 janvier 2008 Statut Membre Dernière intervention 30 avril 2012
29 avril 2008 à 16:33
Merci de me renseigner,chtilou :-)

Michel
0
icudelouest Messages postés 28 Date d'inscription mardi 29 avril 2008 Statut Membre Dernière intervention 4 janvier 2011
29 avril 2008 à 16:45
en effet, je risquais pas de trouver...
Je te remercie beaucoup!!!
Mais j'aimerais quand même savoir pourquoi ma formule ne marchait pas.
=SI(C3=RECHERCHEV(C4;Centre;3;FAUX);RECHERCHEV(C4;Centre;4;FAUX);"")

Maintenant je vais me pencher sur la matricielle!

Encore merci!
0
icudelouest Messages postés 28 Date d'inscription mardi 29 avril 2008 Statut Membre Dernière intervention 4 janvier 2011 > chtilou Messages postés 1696 Date d'inscription mardi 22 janvier 2008 Statut Membre Dernière intervention 30 avril 2012
29 avril 2008 à 16:46
Bonjour!

Super, ça va m'aider à comprendre ce qu'a fait michel!

Merci beaucoup!
0
chtilou Messages postés 1696 Date d'inscription mardi 22 janvier 2008 Statut Membre Dernière intervention 30 avril 2012 523 > michel_m Messages postés 16603 Date d'inscription lundi 12 septembre 2005 Statut Contributeur Dernière intervention 16 décembre 2023
29 avril 2008 à 16:50
Salut Michel,
ce complément d'information est plutôt destiné à Icudelouest.
Il explique en détail la formule que tu as appliqué (c'est pour cette raison que j'ai suivi ton post) ainsi que d'autres techniques relatives aux recherches sur excel.
D'autres articles "comment faire..." du support Microsoft ici:
https://support.microsoft.com/default.aspx/ph/11346/fr?sid=1289
Je pense que ça peut intéresser certains d'entre nous.
Cordialement.
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
icudelouest Messages postés 28 Date d'inscription mardi 29 avril 2008 Statut Membre Dernière intervention 4 janvier 2011
1 mai 2008 à 22:37
Par rapport à mon dernier post, je tiens à préciser que j'ai office 2007, les autres ont 2003...y aurait-il incompatibilité ou un détail à changer dans la formule?
MErci de votre réponse!!!
0
icudelouest Messages postés 28 Date d'inscription mardi 29 avril 2008 Statut Membre Dernière intervention 4 janvier 2011
1 mai 2008 à 22:56
Bon OK, désolée, c'est moi qui ai merdé en essayant de refaire la formule, j'avais pris toute la colonne au lieu de saisir la plage, et apparamment office 2003 aime pas ça...

PAr contre j'ai toujours pas compris pourquoi mettre min( dans cette formule...et d'ailleurs pourquoi pas max comme indiqué dans le support microsoft?

Désolée je suis lourde...
Merci!
0
icudelouest Messages postés 28 Date d'inscription mardi 29 avril 2008 Statut Membre Dernière intervention 4 janvier 2011
2 mai 2008 à 11:29
Je vais encore vous embeter mais j'aimerais aller un peu plus loin.
Dans la BDD que je t'ai envoyée michel, je voudrais pouvoir faire également une recherche des centres RO par le nom et non par leurs codes. Il faudrait qu'Excel trouve les codes par rapport au nom saisi même s'il est saisi partiellement. En effet, les utilisateurs ne connaissent pas la dénomination complète mais seulement la ville souvent.

Je n'ai jamais créer de commande ou autre en VBA et je suis perdue! J'ai pu faire ma boite de dialogue avec la zone de texte et le bouton mais après le code, c'est la cata!

J'espère que vos lumières m'éclaireront!!!
Merci!
@+
0
michel_m Messages postés 16603 Date d'inscription lundi 12 septembre 2005 Statut Contributeur Dernière intervention 16 décembre 2023 3 310
2 mai 2008 à 12:13
OK, mais le problème est que tu as le même nom plusieurs fois;

Donc, doit on tous les sortir ou demande t'on en plus le code du centre ?

Peut ^tre passer les 2 tyypes de recherche (code ou nom) en VBA avec userform? (c'est du boulot, ne sis pas pressée...)

A+
0
icudelouest Messages postés 28 Date d'inscription mardi 29 avril 2008 Statut Membre Dernière intervention 4 janvier 2011
2 mai 2008 à 12:18
Oui l'idéal serait de tous les sortir.
Merci!
0
michel_m Messages postés 16603 Date d'inscription lundi 12 septembre 2005 Statut Contributeur Dernière intervention 16 décembre 2023 3 310
5 mai 2008 à 08:08
Bonjour,

1 ou 2 trucs à vérifier sur ton appli.... Les 2 types de recherche ( code et intitulé partiel) sont automatisés en VBA avec un formulaire de saisie.
Je t'envoie ça dans la journée dès que j'ai un moment au boulot.

cordialement
Michel
0
michel_m Messages postés 16603 Date d'inscription lundi 12 septembre 2005 Statut Contributeur Dernière intervention 16 décembre 2023 3 310
5 mai 2008 à 12:12
Re,

Ci joint l'engin comme promis
https://www.cjoint.com/?ffmjqbV6hl

nota: je me suis basé sur le fait que ta liste était triée ro-puis caisse- puis centre; cette liste devra toujours respectée ce tri

fais des essais et dis moi

Michel
0
Waouw!!! c'et tout simplement génial!!!
Je te remercie vraiment beaucoup!!! c'est parfait!
Encore merci!
Bonne journée!
0