Références indirectes

Bonjour,

petit problème de formules, comme d'hab' en ce qui me concerne dès que ça devient pointu!

Les tenants et aboutissants sont expliqués dans le fichier joint, en feuille 'DATA' : ce sera plus simple qu'un long discours.

Merci pour l'aide que vous voudrez bien m'apporter!

A+

Bonjour curulis57

Chez nous les homonymes nous les traitons avec un chiffre ou avec les initiales du prénom derrière le nom

Salut JExcel2FR,

suggestion logique que je n'allais pas manquer de glisser à l'oreille du demandeur... mais dans l'immédiat, et pour ma gouverne personnelle aussi, une solution plus "excelienne" serait la bienvenue!

Bonne journée!

A+

Bonjour à tous !

Une proposition ?

(avec les conséquences éventuellement fâcheuses de la volatilité de la fonction DECALER)

Salut JFL,

merci pour ton intervention mais, je ne vois pas, ou je ne comprends pas, la solution à mon problème!

image

Peux-tu m'expliquer ta démarche ou les corrections à apporter car les n° de ligne de l'équipe 2 sont identiques!

A+

Bonjour à tous de nouveau !

Ne fallait-il pas retourner le positionnement d'un participant au sein d'une plage "Equipe X" ?

Autrement dit, retourner un résultat similaire à la colonne F en tentant de simplifier la formule initiale ?

Salut JFL,

l'idéal serait d'obtenir, en colonne [F], le n° de ligne en 'Planning' correspondant au nom dans 'DATA', même si homonymes entre équipes, en limitant la recherche EQUIV dans le Range de son équipe seule.
Cette plage précise est calculée en colonne [G].

J'ai trouvé un début de solution mais je n'ai pas réussi à la mettre en oeuvre.

image

Mais, comme le disait si bien JExcel2FR, il est évident qu'une différenciation des noms identiques par un chiffre ou une initiale est LA solution parfaite.

Merci d'user tes neurones pour cette recherche

A+

Bonjour Curulis57, JFL, JExcel2fr,

Remplacer dans la formule Equiv colonne D pour la deuxième équipe la plage $A:$A par $A$17:$A$27.

Puis rajouter +16 après le 0) de la formule.

Ainsi on cible uniquement la 2ième équipe.

Hello m'sieur

Une proposition

@+

Bonjour à tous de nouveau !

S'il s'agit de retourner la ligne de la feuille "Planning" concernée par le participant d'une équipe donnée (en tentant de simplifier le nombre de colonnes) :

Hello,

Une autre proposition avec une formule unique pour dynamiser la plage de recherche, je pouvais pas rester sur du multicolonne

@+

Bonjour à tous de nouveau !

Une petite version 3 (simplifiée) en F2 :

=SIERREUR(EQUIV(C2;DECALER(Planning!$A$1;EQUIV(E2;Planning!A:A;0);;12);0)+EQUIV(E2;Planning!A:A;0);"")

A étirer vers le bas.

Je m'avoue vaincu

Salut les as

problème vaincu par JFL et BAROUTE avec avantage à BAROUTE pour la concision
Merci, les gars... même si je ne comprends pas trop le miracle de votre formule!

BAROUTE, ta formule est bonne : j'ai juste transféré le ;"") de la condition fausse en fin de formule!
XCellus, ton +16 m'a perturbé, je l'avoue!

15references.xlsx (14.48 Ko)

Trop forts, les as!

A+

Bonjour à tous de nouveau !

Bien...

Je vous remercie de ce retour.

bonjour

une contribution

cordialement

20curulis.xlsx (12.79 Ko)

Salut Tulipe,

woaw!

J'ai déjà des difficultés à comprendre le pourquoi du comment de la formule de BAROUTE...
Ta formule fonctionne parfaitement sans tout le tralala des formules annexes (dont les résultats me sont utiles par ailleurs) mais, sur ce coup-ci, je pense économiser ma patience!

Trop fort, comme d'hab', Tulipe!
Merci pour ta participation!

A+

Hey, merci pour le retour,

Pour aller un peu dans la décomposition :

=EQUIV($C2;DECALER(INDIRECT(ADRESSE(EQUIV(E2;Planning!$A:$A;0);1;4;;"Planning"));;;12;1);0)+EQUIV(E2;Planning!$A:$A;0)-1

Tu as le EQUIV présent dans la fonction ADRESSE qui te renvoie le numéro de ligne de "Equipe1" ou "Equipe2" dans ta feuille planning.

EQUIV(E2;Planning!$A:$A;0)

Tu as la partie ADRESSE qui va te renvoyer grâce à un numéro de ligne et numéro de colonne une référence de cellule. Donc je lui dis de me renvoyer la référence de la cellule définie par le croisement du EQUIV ci-dessus et de la colonne 1 de la feuille planning. Basiquement, si c'est équipe1 ça renvoie "Planning!A4", et pour équipe 2 ça renvoie "Planning!A17"

ADRESSE(EQUIV(E2;Planning!$A:$A;0);1;4;;"Planning")

J'utilise ensuite la fonction INDIRECT pour interpréter cette référence de cellule mais ça tu connais le fonctionnement de la fonction INDIRECT

INDIRECT(ADRESSE(EQUIV(E2;Planning!$A:$A;0);1;4;;"Planning"))

Du coup ça me permet d'obtenir ma cellule de départ, et à partir de cette cellule avec la fonction décaler je lui dis que ma plage de recherche fait 12 de hauteur. Donc basiquement pour équipe1 ça va renvoyer la plage "Planning!A4:A15" et pour équipe2 "Planning!A17:A28"

DECALER(INDIRECT(ADRESSE(EQUIV(E2;Planning!$A:$A;0);1;4;;"Planning"));;;12;1)

Du coup ensuite tu recherches la position de ton nom en colonne C dans cette plage qui correspond à équipe1 ou équipe2 etc

EQUIV($C2;DECALER(INDIRECT(ADRESSE(EQUIV(E2;Planning!$A:$A;0);1;4;;"Planning"));;;12;1);0)

Et enfin vu que ta plage par équipe n'est pas le numéro de ligne que tu recherches car ta plage n'est pas la colonne entière tu utilises la deuxième partie qui correspond au numéro de ligne de ton équipe et donc au nombre de ligne qu'il a passé avant d'arriver à ton numéro d'équipe.

+EQUIV(E2;Planning!$A:$A;0)-1

J'espère que c'est plus clair

@+

re

a tout hasard pour simplifier

SIERREUR(SOMMEPROD(PETITE.VALEUR(SI(ESTNUM(CHERCHE(C2;Planning!A$5:A$28));LIGNE(Planning!A$5:A$28));NB.SI(Data!C$2:C2;C2)));"")

cordialement

A nouveau,

@Curulis,

Il n'y a rien de déroutant à rajouter + 16 à ta formule pour la deuxième équipe. Car c'est la position où débute l'emplacement de celle-ci dans ta feuille Planning.

Donc = SI(C12<>"";EQUIV(C12;Planning!$A$17:$A$27;0)+16;"")

Pour remplacer en D12 ta formule et à tirer vers le bas. 2 caractères à rajouter. Et c'est tout.

Tu peux par le gestionnaire de noms attribuer à Équipe2 la valeur 16 et inscrire directement Équipe2 dans ta formule à la place du nombre 16.

Même topo si tu rajoutes d'autres équipes.

Rechercher des sujets similaires à "references indirectes"