Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

recherchev dans une feuille au nom variable

13 réponses
Avatar
sophhia
Bonjour,

J'aimerais faire une recherchev mais que la feuille dans laquelle la
recherche se fait dépende du nom d'une autre cellule.
En clair, j'ai une feuille par personne avec leur nom, elles sont toutes
identiques, avec une liste de modules et en face "inscrit" si la personne
l'a choisit.
Feuil"Nom 1"
Module1 inscrit
Module2 inscrit
Module3

Ensuite j'ai une feuille de synthèse par module où j'ai tout les noms des
personnes et j'aimerais remonter s'ils sont inscrits ou pas sur leur
feuille.

Module1
Nom 1 recherchev(Module1;feuil"Nom 1"!A4:D50;3;faux)
Nom 2 recherchev(Module2;feuil"Nom 2"!A4:D50;3;faux)
Nom 3 recherchev(Module3;feuil"Nom 3"!A4:D50;3;faux)

Pouvez-vous me dire comment je peux avoir le nom de la feuille à laquelle je
fais référence qui varie automatiquement en fonction du nom dans la première
cellule?

J'espère que mon explication est suffisamment claire.

D'avance, merci de votre aide !

Soffia

3 réponses

1 2
Avatar
JB
Bonjour,


=SI(ESTNA(EQUIV("inscrit";INDEX(INDIRECT($C$15);EQUIV($C$3;INDIRECT($C
$15&"_inscrits");0););0));"non";INDEX(INDIRECT($C$15);
1;EQUIV("zzzz";INDEX(INDIRECT($C$15);EQUIV($C$3;INDIRECT($C
$15&"_inscrits");0););1)+1-MOD(EQUIV("zzzz";INDEX(INDIRECT($C
$15);EQUIV($C$3;INDIRECT($C$15&"_inscrits");0););1);2)))

http://boisgontierjacques.free.fr/pages_site/fonctionindex.htm#DateInscript ion

http://cjoint.com/?jCjdrxI8ue

JB

On 27 sep, 23:15, JB wrote:
Donne le denier inscrit (la dernière cellule pleine)
=SI(ESTNA(EQUIV("inscrit";INDEX(INDIRECT($C$15);EQUIV($C$3;INDIRECT($C
$15&"_inscrits");0););0));"non";INDEX(INDIRECT($C$15);
1;EQUIV("zzzz";INDEX(INDIRECT($C$15);EQUIV($C$3;INDIRECT($C
$15&"_inscrits");0););1)+1))

http://cjoint.com/?jBxn6YaUJB

JB

On 27 sep, 19:15, "sophhia" wrote:



La formule est super, mais a juste une limite et je ne sais pas si l'on peut
faire autrement.

En fait, mon collaborateur peut avoir été inscrit en date 1 mais ab sent.
donc il s'inscrit en date 2.
Dans la feuille "participations" je ne voudrais pas perdre l'historique mais
sur la feuille "collaborateur" je voudrais qu'il me remonte la derniè re date
"inscrit". En fait qu'Excel recherche "inscrit" mais en lisant de droit e à
gauche finalement..
Est-ce possible?

D'avance merci.

"sophhia" a écrit dans le message de news:


Une erreur dans mon explication, je ne veux pas récupérer l'info dans
"fiche type collaborateur" mais dans "collaborateur1", "collaborateur 2",
etc.

"sophhia" a écrit dans le message de news:

Ok, mon fichier se trouve zippé à l'adresse suivante.
http://cjoint.com/?jBlkP800AK

Pour l'instant, j'ai juste mis quelques données,c'estlatrame.
Les feuilles qui m'intéressent sur ce problème sont :
-"Collaborateur 1", "Collaborateur 2" (qui se démultiplira en auta nt de
feuilles que j'ai de collaborateurs) : où je veux remonter la date
d'inscription et la participation
- en fonction de ce qui est rempli dans les tableaux de la feuille
"participation". En fait là il n'y a qu'un tableau sur un module m ais
dans l'idée il y en aura plusieurs, 1 par module

Donc, dans le tableau du module sur la feuille participation mon
collaborateur a potentiellement son nom. Dans la ligne de son nom, i l a
"inscrit" et "absent/présent" dans la colonne de la date à laque lle il a
suivi le module.
Je veux pouvoir récupérer cette information (et surtout la date en haut
de la colonne) dans ma feuille "fiche type collaborateur"
Avec la formule ça marche bien, mais je ne peux avoir que 3 colonn es de
date possible dans "participation" après Excel refuse la formule. Je ne
peux pas simplifier ma formule et chercher dans un tableau avec auta nt de
colonnes que de dates ?

J'ai mis le classeur en entier car j'aurais d'autres questions sur d es
macros cette fois. Mais je prends les problèmes 1 par 1 !

D'avance, merci !

"JB" a écrit dans le message de news:

Bonsoir,

Avec le classeur en PJ, ce serait + pratique.

JB
On 26 sep, 18:33, "sophhia" wrote:
C parfait merci !

J'aurais juste une autre question liée car elle utilise indirect.

Toujours avec mes modules, j'ai un tableau par module qui récapit ule
quelles
personnes ont suivi le module à quelle date.

Module 1

Date 1 Date 2
Date 3...

Inscrit Participation Inscrit
Participation
...

Collaborateur 1

Collaborateur 2

Collaborateur 3

Module 2

Date 1 Date 2
Date 3...

Inscrit Participation Inscrit
Participation
...

Collaborateur 1

Collaborateur 2

Collaborateur 3

J'ai nommé les tableaux du nom du module.

J'aimerais pouvoir remonter la date d'inscription et la participati on
sur la
feuille du collaborateur.

Date de participation

Module 1

Module 2

J'utilise la fonction index equiv et indirect pour aller chercher d ans
chaque colonne de date du tableau module, si le collaborateur est
inscrit ou
non et remonter la date qui correspond.

Ca donne, sur la feuille du collaborateur :
si(indirect("C15")=0;"";si(indirect(C15&"_inscrits"));"";si(index (indirect(­­­C15);equiv($C$3;indirect(C15&"_inscrits");0);9)<>"";inde x(indirect(C15);e­q­u­iv($C$3;indirect(C15&"_inscrits");0;)9)...

En C3 le nom du collaborateur et en C15 le nom du module.

Les 2 premiers SI me permettent d'éviter que le résultat ne s'a ffiche en
erreur si le tableau des inscriptions au module n'a pas encore ét é créé
(ce
qui est possible).

Indirect(C15&"_inscrits") correspond à la liste des noms dans le tableau
d'inscription.

En bon français, la formule dit : si il y a quelque chose d'inscr it en
face
du nom dans la colonne de la date1 alors tu m'indiques la date1 (qu i se
trouve en haut de la colonne).

La formule fonctionne bien, le problème est que je ne peux pas al ler
au-delà
de 3 colonnes de recherche, après il y a trop de fonctions imbriq uées
pour
Excel. Or je peux avoir plus de 3 dates possibles.

Est-il possible par formule de rechercher s'il y a inscrit dans l'u ne
des
colonnes du tableau en face du nom et si oui de remonter la date qu i se
trouve en haut de cette colonne???

J'espère avoir été suffisamment claire!

D'avance merci !

"JB" a écrit dans le message de news:

Bonjour,

http://cjoint.com/?jtnsdxGIW5

JBhttp://boisgontierjacques.free.fr

On 19 sep, 12:38, "sophhia" wrote:

Bonjour,

J'aimerais faire une recherchev mais que la feuille dans laquelle la
recherche se fait dépende du nom d'une autre cellule.
En clair, j'ai une feuille par personne avec leur nom, elles sont
toutes
identiques, avec une liste de modules et en face "inscrit" si la
personne
l'a choisit.
Feuil"Nom 1"
Module1 inscrit
Module2 inscrit
Module3

Ensuite j'ai une feuille de synthèse par module où j'ai tout les noms
des
personnes et j'aimerais remonter s'ils sont inscrits ou pas sur l eur
feuille.

Module1
Nom 1 recherchev(Module1;feuil"Nom 1"!A4:D50;3;faux)
Nom 2 recherchev(Module2;feuil"Nom 2"!A4:D50;3;faux)
Nom 3 recherchev(Module3;feuil"Nom 3"!A4:D50;3;faux)

Pouvez-vous me dire comment je peux avoir le nom de la feuille à
laquelle
je
fais référence qui varie automatiquement en fonction du nom d ans la
première
cellule?

J'espère que mon explication est suffisamment claire.

D'avance, merci de votre aide !

Soffia- Masquer le texte des messages précédents -


- Afficher le texte des messages précédents -- Masquer le texte des messages précédents -




- Afficher le texte des messages précédents -- Masquer le texte des messages précédents -


- Afficher le texte des messages précédents -







Avatar
sophhia
Bonjour JB,

Merci encore pour cette aide sur les equiv/indirect, c'est parfait.
Juste quelle est la distinction entre les deux formules pour remonter le
dernier inscrit (celle proposée hier soir et celle proposée ce matin?).
Laquelle dois-je utiliser?
Et comment puis-je écrire la formule pour remonter la participation
(rechercher la colonne où il y a à la date et me donner ce qu'il y a
d'inscrit à l'intersection avec la ligne du collaborateur).

Merci encore pour tout.

Cdlt

"JB" a écrit dans le message de news:

Bonjour,


=SI(ESTNA(EQUIV("inscrit";INDEX(INDIRECT($C$15);EQUIV($C$3;INDIRECT($C
$15&"_inscrits");0););0));"non";INDEX(INDIRECT($C$15);
1;EQUIV("zzzz";INDEX(INDIRECT($C$15);EQUIV($C$3;INDIRECT($C
$15&"_inscrits");0););1)+1-MOD(EQUIV("zzzz";INDEX(INDIRECT($C
$15);EQUIV($C$3;INDIRECT($C$15&"_inscrits");0););1);2)))

http://boisgontierjacques.free.fr/pages_site/fonctionindex.htm#DateInscription

http://cjoint.com/?jCjdrxI8ue

JB

On 27 sep, 23:15, JB wrote:
Donne le denier inscrit (la dernière cellule pleine)
=SI(ESTNA(EQUIV("inscrit";INDEX(INDIRECT($C$15);EQUIV($C$3;INDIRECT($C
$15&"_inscrits");0););0));"non";INDEX(INDIRECT($C$15);
1;EQUIV("zzzz";INDEX(INDIRECT($C$15);EQUIV($C$3;INDIRECT($C
$15&"_inscrits");0););1)+1))

http://cjoint.com/?jBxn6YaUJB

JB

On 27 sep, 19:15, "sophhia" wrote:



La formule est super, mais a juste une limite et je ne sais pas si l'on
peut
faire autrement.

En fait, mon collaborateur peut avoir été inscrit en date 1 mais absent.
donc il s'inscrit en date 2.
Dans la feuille "participations" je ne voudrais pas perdre l'historique
mais
sur la feuille "collaborateur" je voudrais qu'il me remonte la dernière
date
"inscrit". En fait qu'Excel recherche "inscrit" mais en lisant de droite
à
gauche finalement..
Est-ce possible?

D'avance merci.

"sophhia" a écrit dans le message de news:


Une erreur dans mon explication, je ne veux pas récupérer l'info dans
"fiche type collaborateur" mais dans "collaborateur1", "collaborateur
2",
etc.

"sophhia" a écrit dans le message de news:

Ok, mon fichier se trouve zippé à l'adresse suivante.
http://cjoint.com/?jBlkP800AK

Pour l'instant, j'ai juste mis quelques données,c'estlatrame.
Les feuilles qui m'intéressent sur ce problème sont :
-"Collaborateur 1", "Collaborateur 2" (qui se démultiplira en autant
de
feuilles que j'ai de collaborateurs) : où je veux remonter la date
d'inscription et la participation
- en fonction de ce qui est rempli dans les tableaux de la feuille
"participation". En fait là il n'y a qu'un tableau sur un module mais
dans l'idée il y en aura plusieurs, 1 par module

Donc, dans le tableau du module sur la feuille participation mon
collaborateur a potentiellement son nom. Dans la ligne de son nom, il
a
"inscrit" et "absent/présent" dans la colonne de la date à laquelle
il a
suivi le module.
Je veux pouvoir récupérer cette information (et surtout la date en
haut
de la colonne) dans ma feuille "fiche type collaborateur"
Avec la formule ça marche bien, mais je ne peux avoir que 3 colonnes
de
date possible dans "participation" après Excel refuse la formule. Je
ne
peux pas simplifier ma formule et chercher dans un tableau avec
autant de
colonnes que de dates ?

J'ai mis le classeur en entier car j'aurais d'autres questions sur
des
macros cette fois. Mais je prends les problèmes 1 par 1 !

D'avance, merci !

"JB" a écrit dans le message de news:

Bonsoir,

Avec le classeur en PJ, ce serait + pratique.

JB
On 26 sep, 18:33, "sophhia" wrote:
C parfait merci !

J'aurais juste une autre question liée car elle utilise indirect.

Toujours avec mes modules, j'ai un tableau par module qui récapitule
quelles
personnes ont suivi le module à quelle date.

Module 1

Date 1 Date
2
Date 3...

Inscrit Participation Inscrit
Participation
...

Collaborateur 1

Collaborateur 2

Collaborateur 3

Module 2

Date 1 Date
2
Date 3...

Inscrit Participation Inscrit
Participation
...

Collaborateur 1

Collaborateur 2

Collaborateur 3

J'ai nommé les tableaux du nom du module.

J'aimerais pouvoir remonter la date d'inscription et la
participation
sur la
feuille du collaborateur.

Date de participation

Module 1

Module 2

J'utilise la fonction index equiv et indirect pour aller chercher
dans
chaque colonne de date du tableau module, si le collaborateur est
inscrit ou
non et remonter la date qui correspond.

Ca donne, sur la feuille du collaborateur :
si(indirect("C15")=0;"";si(indirect(C15&"_inscrits"));"";si(index(indirect(­­­C15);equiv($C$3;indirect(C15&"_inscrits");0);9)<>"";index(indirect(C15);e­q­u­iv($C$3;indirect(C15&"_inscrits");0;)9)...

En C3 le nom du collaborateur et en C15 le nom du module.

Les 2 premiers SI me permettent d'éviter que le résultat ne
s'affiche en
erreur si le tableau des inscriptions au module n'a pas encore été
créé
(ce
qui est possible).

Indirect(C15&"_inscrits") correspond à la liste des noms dans le
tableau
d'inscription.

En bon français, la formule dit : si il y a quelque chose d'inscrit
en
face
du nom dans la colonne de la date1 alors tu m'indiques la date1 (qui
se
trouve en haut de la colonne).

La formule fonctionne bien, le problème est que je ne peux pas aller
au-delà
de 3 colonnes de recherche, après il y a trop de fonctions
imbriquées
pour
Excel. Or je peux avoir plus de 3 dates possibles.

Est-il possible par formule de rechercher s'il y a inscrit dans
l'une
des
colonnes du tableau en face du nom et si oui de remonter la date qui
se
trouve en haut de cette colonne???

J'espère avoir été suffisamment claire!

D'avance merci !

"JB" a écrit dans le message de news:

Bonjour,

http://cjoint.com/?jtnsdxGIW5

JBhttp://boisgontierjacques.free.fr

On 19 sep, 12:38, "sophhia" wrote:

Bonjour,

J'aimerais faire une recherchev mais que la feuille dans laquelle
la
recherche se fait dépende du nom d'une autre cellule.
En clair, j'ai une feuille par personne avec leur nom, elles sont
toutes
identiques, avec une liste de modules et en face "inscrit" si la
personne
l'a choisit.
Feuil"Nom 1"
Module1 inscrit
Module2 inscrit
Module3

Ensuite j'ai une feuille de synthèse par module où j'ai tout les
noms
des
personnes et j'aimerais remonter s'ils sont inscrits ou pas sur
leur
feuille.

Module1
Nom 1 recherchev(Module1;feuil"Nom 1"!A4:D50;3;faux)
Nom 2 recherchev(Module2;feuil"Nom 2"!A4:D50;3;faux)
Nom 3 recherchev(Module3;feuil"Nom 3"!A4:D50;3;faux)

Pouvez-vous me dire comment je peux avoir le nom de la feuille à
laquelle
je
fais référence qui varie automatiquement en fonction du nom dans
la
première
cellule?

J'espère que mon explication est suffisamment claire.

D'avance, merci de votre aide !

Soffia- Masquer le texte des messages précédents -


- Afficher le texte des messages précédents -- Masquer le texte des
messages précédents -




- Afficher le texte des messages précédents -- Masquer le texte des
messages précédents -


- Afficher le texte des messages précédents -







Avatar
sophhia
Ok c'est bon j'ai réussi à rechercher ma participation
=INDEX(INDIRECT($C15);EQUIV($C$3;INDIRECT($C15&"_inscrits");0);EQUIV(F15;INDIRECT($C$15&"_dates");0)+1)
Il fallait que je définisse une zone de nom aussi pour les dates.

J'espère qu'Excel ne limite pas en zones de nom parce que ça va en faire
beaucoup...

Juste si je peux avoir une réponse pour ma macro, ce serait tout simplement
parfait...

"JB" a écrit dans le message de news:

Bonjour,


=SI(ESTNA(EQUIV("inscrit";INDEX(INDIRECT($C$15);EQUIV($C$3;INDIRECT($C
$15&"_inscrits");0););0));"non";INDEX(INDIRECT($C$15);
1;EQUIV("zzzz";INDEX(INDIRECT($C$15);EQUIV($C$3;INDIRECT($C
$15&"_inscrits");0););1)+1-MOD(EQUIV("zzzz";INDEX(INDIRECT($C
$15);EQUIV($C$3;INDIRECT($C$15&"_inscrits");0););1);2)))

http://boisgontierjacques.free.fr/pages_site/fonctionindex.htm#DateInscription

http://cjoint.com/?jCjdrxI8ue

JB

On 27 sep, 23:15, JB wrote:
Donne le denier inscrit (la dernière cellule pleine)
=SI(ESTNA(EQUIV("inscrit";INDEX(INDIRECT($C$15);EQUIV($C$3;INDIRECT($C
$15&"_inscrits");0););0));"non";INDEX(INDIRECT($C$15);
1;EQUIV("zzzz";INDEX(INDIRECT($C$15);EQUIV($C$3;INDIRECT($C
$15&"_inscrits");0););1)+1))

http://cjoint.com/?jBxn6YaUJB

JB

On 27 sep, 19:15, "sophhia" wrote:



La formule est super, mais a juste une limite et je ne sais pas si l'on
peut
faire autrement.

En fait, mon collaborateur peut avoir été inscrit en date 1 mais absent.
donc il s'inscrit en date 2.
Dans la feuille "participations" je ne voudrais pas perdre l'historique
mais
sur la feuille "collaborateur" je voudrais qu'il me remonte la dernière
date
"inscrit". En fait qu'Excel recherche "inscrit" mais en lisant de droite
à
gauche finalement..
Est-ce possible?

D'avance merci.

"sophhia" a écrit dans le message de news:


Une erreur dans mon explication, je ne veux pas récupérer l'info dans
"fiche type collaborateur" mais dans "collaborateur1", "collaborateur
2",
etc.

"sophhia" a écrit dans le message de news:

Ok, mon fichier se trouve zippé à l'adresse suivante.
http://cjoint.com/?jBlkP800AK

Pour l'instant, j'ai juste mis quelques données,c'estlatrame.
Les feuilles qui m'intéressent sur ce problème sont :
-"Collaborateur 1", "Collaborateur 2" (qui se démultiplira en autant
de
feuilles que j'ai de collaborateurs) : où je veux remonter la date
d'inscription et la participation
- en fonction de ce qui est rempli dans les tableaux de la feuille
"participation". En fait là il n'y a qu'un tableau sur un module mais
dans l'idée il y en aura plusieurs, 1 par module

Donc, dans le tableau du module sur la feuille participation mon
collaborateur a potentiellement son nom. Dans la ligne de son nom, il
a
"inscrit" et "absent/présent" dans la colonne de la date à laquelle
il a
suivi le module.
Je veux pouvoir récupérer cette information (et surtout la date en
haut
de la colonne) dans ma feuille "fiche type collaborateur"
Avec la formule ça marche bien, mais je ne peux avoir que 3 colonnes
de
date possible dans "participation" après Excel refuse la formule. Je
ne
peux pas simplifier ma formule et chercher dans un tableau avec
autant de
colonnes que de dates ?

J'ai mis le classeur en entier car j'aurais d'autres questions sur
des
macros cette fois. Mais je prends les problèmes 1 par 1 !

D'avance, merci !

"JB" a écrit dans le message de news:

Bonsoir,

Avec le classeur en PJ, ce serait + pratique.

JB
On 26 sep, 18:33, "sophhia" wrote:
C parfait merci !

J'aurais juste une autre question liée car elle utilise indirect.

Toujours avec mes modules, j'ai un tableau par module qui récapitule
quelles
personnes ont suivi le module à quelle date.

Module 1

Date 1 Date
2
Date 3...

Inscrit Participation Inscrit
Participation
...

Collaborateur 1

Collaborateur 2

Collaborateur 3

Module 2

Date 1 Date
2
Date 3...

Inscrit Participation Inscrit
Participation
...

Collaborateur 1

Collaborateur 2

Collaborateur 3

J'ai nommé les tableaux du nom du module.

J'aimerais pouvoir remonter la date d'inscription et la
participation
sur la
feuille du collaborateur.

Date de participation

Module 1

Module 2

J'utilise la fonction index equiv et indirect pour aller chercher
dans
chaque colonne de date du tableau module, si le collaborateur est
inscrit ou
non et remonter la date qui correspond.

Ca donne, sur la feuille du collaborateur :
si(indirect("C15")=0;"";si(indirect(C15&"_inscrits"));"";si(index(indirect(­­­C15);equiv($C$3;indirect(C15&"_inscrits");0);9)<>"";index(indirect(C15);e­q­u­iv($C$3;indirect(C15&"_inscrits");0;)9)...

En C3 le nom du collaborateur et en C15 le nom du module.

Les 2 premiers SI me permettent d'éviter que le résultat ne
s'affiche en
erreur si le tableau des inscriptions au module n'a pas encore été
créé
(ce
qui est possible).

Indirect(C15&"_inscrits") correspond à la liste des noms dans le
tableau
d'inscription.

En bon français, la formule dit : si il y a quelque chose d'inscrit
en
face
du nom dans la colonne de la date1 alors tu m'indiques la date1 (qui
se
trouve en haut de la colonne).

La formule fonctionne bien, le problème est que je ne peux pas aller
au-delà
de 3 colonnes de recherche, après il y a trop de fonctions
imbriquées
pour
Excel. Or je peux avoir plus de 3 dates possibles.

Est-il possible par formule de rechercher s'il y a inscrit dans
l'une
des
colonnes du tableau en face du nom et si oui de remonter la date qui
se
trouve en haut de cette colonne???

J'espère avoir été suffisamment claire!

D'avance merci !

"JB" a écrit dans le message de news:

Bonjour,

http://cjoint.com/?jtnsdxGIW5

JBhttp://boisgontierjacques.free.fr

On 19 sep, 12:38, "sophhia" wrote:

Bonjour,

J'aimerais faire une recherchev mais que la feuille dans laquelle
la
recherche se fait dépende du nom d'une autre cellule.
En clair, j'ai une feuille par personne avec leur nom, elles sont
toutes
identiques, avec une liste de modules et en face "inscrit" si la
personne
l'a choisit.
Feuil"Nom 1"
Module1 inscrit
Module2 inscrit
Module3

Ensuite j'ai une feuille de synthèse par module où j'ai tout les
noms
des
personnes et j'aimerais remonter s'ils sont inscrits ou pas sur
leur
feuille.

Module1
Nom 1 recherchev(Module1;feuil"Nom 1"!A4:D50;3;faux)
Nom 2 recherchev(Module2;feuil"Nom 2"!A4:D50;3;faux)
Nom 3 recherchev(Module3;feuil"Nom 3"!A4:D50;3;faux)

Pouvez-vous me dire comment je peux avoir le nom de la feuille à
laquelle
je
fais référence qui varie automatiquement en fonction du nom dans
la
première
cellule?

J'espère que mon explication est suffisamment claire.

D'avance, merci de votre aide !

Soffia- Masquer le texte des messages précédents -


- Afficher le texte des messages précédents -- Masquer le texte des
messages précédents -




- Afficher le texte des messages précédents -- Masquer le texte des
messages précédents -


- Afficher le texte des messages précédents -







1 2