Index/Equiv + Chaine de caractères

caritijak

XLDnaute Nouveau
Bonjour,

Dans le fichier joint je cherche à remplir les 2 premières colonnes en vert en cherchant la correspondance dans la matrice en jaune.

Il s'agit de repérer la semaine (S28....) à laquelle a lieu une réunion de type SVR ou VDE.

En combinant classiquement les fonctions INDEX et EQUIV, ça marche bien lorsque les cellules ne contiennent que l'une des valeurs, mais comment faire lorsque les deux réunions ont lieu la même semaine ? Est-il possible de combiner les fonctions EQUIV et INDEX avec une recherche de chaine de caractères ?

Merci de votre aide.

Cordialement.

PS : 2 précisions, 1-j'ai cherché sur le forum mais pas trouvé, 2-le format m'est imposé, je ne peux pas modifier l'organisation de la feuille.
 

Pièces jointes

  • Exemple.xls
    18 KB · Affichages: 113
  • Exemple.xls
    18 KB · Affichages: 99
  • Exemple.xls
    18 KB · Affichages: 110

CBernardT

XLDnaute Barbatruc
Re : Index/Equiv + Chaine de caractères

Bonjour caritijak et le forum,

Bienvenue sur XLD

Une solution à ton problème avec "*" avant ou après la définition à chercher.
 

Pièces jointes

  • ExempleV2.xls
    24.5 KB · Affichages: 249
  • ExempleV2.xls
    24.5 KB · Affichages: 277
  • ExempleV2.xls
    24.5 KB · Affichages: 284

caritijak

XLDnaute Nouveau
Re : Index/Equiv + Chaine de caractères

Bonjour,

Dans l'exemple précédent j'ai une petite complication : il peut y avoir plusieurs réunions de chaque type par ligne et je voudrais trouver soit la première occurrence d'une chaine de caractère (c'est le résultat par défaut) soit la dernière.

Avez-vous une idée ?

Cordialement
 

Tibo

XLDnaute Barbatruc
Re : Index/Equiv + Chaine de caractères

Bonjour,

Pour avoir la dernière réunion, une solution passant par une formule matricielle en A3 :

Code:
=INDEX($A$1:$G$1;MAX((ESTNUM(CHERCHE(A$1;$C3:$G3)))*COLONNE($C$1:$G$1)))

Formule matricielle à valider par CTRL + MAJ + ENTREE

à recopier une fois vers la droite et vers le bas

Je te laisse tester

@+

Edit : autre solution, également matricielle, avec la fonction ADRESSE associée à la fonction INDIRECT :

Code:
=INDIRECT(ADRESSE(1;MAX((ESTNUM(CHERCHE(A$1;$C3:$G3)))*COLONNE($C$1:$G$1))))

Matricielle, donc validation par CTRL + MAJ + ENTREE

@+
 
Dernière édition:

caritijak

XLDnaute Nouveau
Re : Index/Equiv + Chaine de caractères

Bonjour,

Merci pour la réponse mais j'ai un petit souci : je ne comprends pas tout mais ce n'est pas grave (je verrai plus tard), par contre je n'arrive pas à appliquer cette formule en l'adaptant au tableau ci-joint (colonnes L pour la première colonne contenant SVR et M pour la dernière colonne contenant VDE).

Puis-je utiliser le MIN "comme" le MAX ?
Y-a-t'il une astuce à part le CTRL+SHIFT+ENTER ?

Merci d'avance.

Cordialement
 

Pièces jointes

  • Exemple 3.xls
    46.5 KB · Affichages: 83
  • Exemple 3.xls
    46.5 KB · Affichages: 104
  • Exemple 3.xls
    46.5 KB · Affichages: 107

Tibo

XLDnaute Barbatruc
Re : Index/Equiv + Chaine de caractères

re,

Pas sûr de tout avoir compris, pour la semaine MAX, un essai avec cette formule matricielle :

Code:
=INDIRECT(ADRESSE(2;MAX((ESTNUM(CHERCHE(M$1;$N3:$AR3)))*COLONNE($N$1:$AR$1))))

à valider par CTRL + MAJ + ENTREE

@+
 

caritijak

XLDnaute Nouveau
Re : Index/Equiv + Chaine de caractères

Merci pour la réponse,

Ca marche parfaitement.

Dernière précision : comment puis-je gérer les erreurs (esterreur ?) avec la fomule matricielle, pour ne pas faire apparaître de #VALEUR quand la valeur n'est pas trouvée ?

Cordialement.
 

Tibo

XLDnaute Barbatruc
Re : Index/Equiv + Chaine de caractères

re,

Pas trop le temps tout de suite, mais peut-être avec un test avant avec la fonction NB.SI et le code précédé et suivi d'une *

Je te laisse essayer.

Si souci, je reviendrais plus tard

@+
 

Discussions similaires

Statistiques des forums

Discussions
312 348
Messages
2 087 508
Membres
103 568
dernier inscrit
NoS