Excel fonction si(...equiv(
Résolu
icudelouest
Messages postés
28
Date d'inscription
Statut
Membre
Dernière intervention
-
icudelouest -
icudelouest -
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!
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:
- Excel fonction si(...equiv(
- Fonction si et - Guide
- Liste déroulante excel - Guide
- Word et excel gratuit - Guide
- Excel cellule couleur si condition texte - Guide
- Equiv excel anglais - Guide
10 réponses
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
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
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
Oui, réexplique parce que...
et mieux, mets aussi ton fichier sans données confidentielles en pièce jointe avec
www.cjoint.com
Michel
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
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
re,
proposition avec une "petite formule matricielle" où il faut rester zen..
https://www.cjoint.com/?eDqcgsEtFe
Michel
proposition avec une "petite formule matricielle" où il faut rester zen..
https://www.cjoint.com/?eDqcgsEtFe
Michel
Bijour tout le monde.
Regardes ici pour les explications:
https://support.microsoft.com/fr-fr/help/465704
Regardes ici pour les explications:
https://support.microsoft.com/fr-fr/help/465704
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.
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.
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
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!!!
MErci de votre réponse!!!
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!
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!
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!
@+
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!
@+
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+
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+
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
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
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
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
Et bien je ne savais pas tout ça! Je te remercie beaucoup de tes explications! Tout fonctionne à merveille!
Amicalement,
Lucie