besoin d'aide formule INDEX + EQUIV avec conditions

WIsh_

XLDnaute Occasionnel
Bonjour,

Ci-joint le fichier excel "test" qui vous permettra de mieux comprendre mon problème.

Sur la ligne 2, pour le dossier n°1, des utilisateurs inscrivent des statuts qui représentent le parcours dudit dossier. A côté de chaque statut ils inscrivent la date du statut.
La liste des utilisateurs se trouve dans le deuxième onglet "user" (A1:A5) et comprend A, B, C, D et E ;
La liste des statuts se trouve dans le troisième onglet "Statut" (A1:A6) et comprend les statuts U, V, W, X, Y et Z.

La cellule O2 affiche le dernier statut sur la ligne grâce à la formule: =INDEX(B2:M2;EQUIV("zzzz";B2:M2;1)).
Ensuite je bloque je n'arrive pas à ajouter des condition à cette formule.

Plutôt que la dernier statut complété du tableau, j'aimerais afficher le dernier statut complété qui est V, W ou X.
J'ai essayé aussi d'écrire, sans succès, une formule pour afficher en P2 le statut dans la cellule avant la cellule qui contient la date la plus récente.

En bref, j'aimerai pouvoir afficher dans la cellule P2 le dernier statut à la condition qu'il s'agisse de V, W ou X. Et si non, que ça affiche "pas disponible".
Et en Q2 j'aimerai afficher la date de ce dernier statut V, W ou X.

Merci d'avance pour votre aide.
 

Pièces jointes

  • test.xlsx
    13.2 KB · Affichages: 7
Solution
Re,
  • avec ton nouvel environnement...
  • avec la zone en jaune de la feuille "Statut" nommée Crit
  • avec deux formules matricielles simplifiées (et aussi plus lisibles)
  • copier les formules matricielles en KE13 et KF13 vers le bas.

Formule matricielle en KE13:
=SIERREUR(INDEX(13:13;GRANDE.VALEUR(SI(ESTNUM(EQUIV($J13:$KB13;Crit;0));COLONNE($J13:$KB13);"");1));"pas disponible")

Formule matricielle en KF13:
=SIERREUR(INDEX(13:13;1+GRANDE.VALEUR(SI(ESTNUM(EQUIV($J13:$KB13;Crit;0));COLONNE($J13:$KB13);"");1));"pas disponible")

remarque: si tu le désires, je peux expliquer les formules...

nota: il vaut mieux, dès le début de la discussion, donner un fichier...

mapomme

XLDnaute Barbatruc
Supporter XLD
Bonjour WIs, @James007 :), @sylvanu :)

Voir formules matricielles en P2 et Q2 à recopier vers le bas.
Un nom de user peut être égal à un statut (peu probable mais on ne sait jamais :oops: :p)

Formule Matricielle:

  • à valider par la combinaison des trois touches Ctrl+Maj+Entrée au lieu de la seule touche Entrée
  • ne pas entourer la formule d'accolade au clavier. C'est la validation par Ctrl+Maj+Entrée qui ajoute les accolades
  • une fois saisie et validée, une formule matricielle peut être copiée et collée
  • à chaque édition/modification de la formule matricielle, penser à la valider par Ctrl+Maj+Entrée
 

Pièces jointes

  • WIsh_- Derniere Cellule- v1.xlsx
    13.5 KB · Affichages: 9
Dernière édition:

WIsh_

XLDnaute Occasionnel
Bonjour,

Ci-joint une proposition ...

En espèrant que cela t'aide
Bonjour James007,
merci pour ton retour rapide.

En P2 j'ai bien le dernier statut v, w ou x mais en Q2, je n'ai pas la date qui correspond lorsque je change les statuts dans le tableau. Soucis avec la formule je crois.
J'aimerai aussi afficher "pas disponible" quand ce n'est pas v, w ou x.

Merci déjà. Je vais regarder les autres réponses.
 

WIsh_

XLDnaute Occasionnel
Bonjour WIs, @James007 :), @sylvanu :)

Voir formules matricielles en P2 et Q2 à recopier vers le bas.
Un nom de user peut être égal à un statut (peu probable mais on ne sait jamais :oops: :p)

Formule Matricielle:

  • à valider par la combinaison des trois touches Ctrl+Maj+Entrée au lieu de la seule touche Entrée
  • ne pas entourer la formule d'accolade au clavier. C'est la validation par Ctrl+Maj+Entrée qui ajoute les accolades
  • une fois saisie et validée, une formule matricielle peut être copiée et collée
  • à chaque édition/modification de la formule matricielle, penser à la valider par Ctrl+Maj+Entrée

Bonjour mapomme,

Merci aussi.
Et merci pour les explications de base concernant les formules matricielles ça m'aide bien.
Par contre je ne comprends pas les formules (et la syntaxe) ; ça me semble plus compliqué que ce que proposait James007 mais ça à l'air de fonctionner.
Comme je lui disais, j'aimerais aussi afficher "pas disponible" si le statut n'est pas x, v, w.
 

WIsh_

XLDnaute Occasionnel
Bonjour Wlsh,
En PJ, une tentative d'après ce que j'ai compris.
Bonjour Sylvanu,

Merci aussi. Ta formule est bien courte et ça c'est plutôt sympa. Par contre, dans le vrai tableau x, v et w sont une suite de 4-5 mots donc les "" me semblent nécessaires. Aussi, si le dernier statut n'est pas x, w ou v, alors q2 ne doit afficher "pas disponible" que si aucun des statuts précédent n'est x, w ou v. Si c'est x, w ou v alors c'est ce statut là, et la date correspondante qui doit être affichée.
 

merinos

XLDnaute Accro
Salut @WIsh_ ,

C'est super simple.

Tu peux nommer une plage de cellules. :D

du style: je selectionne 10 cellules et les appele "ma_liste"
et tu peux employer la liste dans =recherchev("Merinos";ma_liste,1;0) pour voir si "Merinos" fait partie de la liste.

de même tu peux copier une formule DANS la définition du champ nommé.

le champ nommé "fx_Dernier_status" contient la formule "=SI(Table1[@[is VWX4]];Table1[@Statut4];SI(Table1[@[is VWX3]];Table1[@Statut3];SI(Table1[@[is VWX2]];Table1[@Statut2];SI(Table1[@[is VWX]];Table1[@Statut1];" pas de VWX"))))"

et quand j'employe ce champ, j'ai cette formule.
C'est plus court a lire :cool:.


Merinos

PS: j'ai decouvert cette possibilité il y a peu... comme quoi on apprend toujours.
 

WIsh_

XLDnaute Occasionnel
Re

Sinon une autre formule (normale - pas matricielle) et plus simple à comprendre.

La formule en P2 est à tirer/copier en Q2 puis tirer/copier P2:Q2 vers le bas.

Merci mapomme.

Ca ne m'arrange pas d'avoir VWX "collé"
par exemple :
v = "en cours de traitement"
w = "réception initiale"
etc.

Par ailleurs, ma plage de donnée est en réalité J12:KB12. Donc je préfère aussi ne pas devoir lier un bout de formule à chaque colonne individuellement.

donc ta proposition précédente me convenait si ce n'est que je n'ai pas encore réussi à ajouter "pas disponible" dedans. En P2 c'est affciher pas disponible si aucun statut de la ligne n'est v, w ou x et en Q2, si il est mis pas disponible en P2 c'est ne rien afficher.
 

WIsh_

XLDnaute Occasionnel
"=SI(Table1[@[is VWX4]];Table1[@Statut4];SI(Table1[@[is VWX3]];Table1[@Statut3];SI(Table1[@[is VWX2]];Table1[@Statut2];SI(Table1[@[is VWX]];Table1[@Statut1];" pas de VWX"))))"

C'est génial merinos !
Par contre, comme indiqué à mapomme ça ne marchera pas étant donné que dans mon vrai tableau je dois remplacer v, w et x par des phrases de plusieurs mots... si ?
 

Discussions similaires

Statistiques des forums

Discussions
312 177
Messages
2 085 972
Membres
103 073
dernier inscrit
MSCHOE16