Références dans les formules appliquées aux tableaux

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

Victor21

XLDnaute Barbatruc
Supporter XLD
Bonjour, lézamis.

Je rencontre un fonctionnement que je ne m'explique pas avec cette formule appliquée à un tableau :
=INDIRECT(ADRESSE(EQUIV(MAX($B$1:$B$7);$B$1:$B$7;0);1;4))
Lors de l'ajout d'une ligne au tableau, les références absolues aux zones ne s'adaptent pas, alors qu'avec d'autres formules du type :
=DECALER($A$1;EQUIV(MAX($B$3:$B$7);$B$3:$B$7;0)+1;0)
=INDEX($A$3:$A$7;EQUIV(MAX($B$3:$B$7);$B$3:$B$7;0))
les zones en référence s'adaptent lors de l'augmentation de la taille du tableau.

Pouvez-vous confirmer le phénomène ? Avez-vous une explication ?
 

Pièces jointes

Re : Références dans les formules appliquées aux tableaux

Bonjour Patrick 🙂
Je ne suis pas le mieux placé, mais....
Il y a quelque chose qui me chifonne, tes plages de recherches ne sont pas toujours équivalentes.
En $H$4 par exemple:
si tu change ta formule =INDIRECT(ADRESSE(EQUIV(MIN($C$3:$C$9);$C$1:$C$7;0);1;4))
par
=INDIRECT(ADRESSE(EQUIV(MIN($C$3:$C$9);$C$3:$C$9;0);1;4))
Ca fonctionne (enfin sous 2003)

Cordialement
 
Re : Références dans les formules appliquées aux tableaux

Bonjour le Forum,
Bonjour Victor21,🙂,,

Hum, hum, Alors mon ami ne vois tu pas que tu cherche dans ce equiv de ton exemple en cellule H3:

MAX($B$3:$B$8);$B$1:$B$7;0) la plus grande valeur de la plage B3:B8 dans la plage B1:B7 la plus grande valeur étant en en B8 résultat #N/A 🙂

avec MAX($B$3:$B$8);$B$1:$B$8;0) cela doit fonctionner😛


Que la force soit avec toi 🙂

Amicalement

EDIT bonjour Efgé🙂, ta formule fonctionne mais ce qu'il faut par rapport à la partie Adresse c'est le numéro de ligne excat en demandant dans le equiv la position de la valeur cherché a partir du début des données soit ligne 3 on a un decalage de 3 ligne il suffit de demander la position a partir de la ligne 1 et tout rentre dans l'ordre donc 2ème partie de l'equiv C1:C9

Amicalement
 
Dernière édition:
Re : Références dans les formules appliquées aux tableaux

Bonjour Victor, bonjour le forum,
La formule que tu as mise dans ton fichier est
=INDIRECT(ADRESSE(EQUIV(MAX($B$3:$B$7);$B$1:$B$7;0 );1;4))
et non =INDIRECT(ADRESSE(EQUIV(MAX($B$1:$B$7);$B$1:$B$7;0 );1;4))
je confirme que lorsqu'on ajoute une ligne en-dessous du tableau, la mise à jour de ($B$1:$B$7) ne se fait pas alors que celle de $B$3:$B$7 se fait.
Je ne sais pas pourquoi, si ce n'est que j'avais déjà constaté que lors de l'insertion de cellules la mise à jour ne se faisait que dans le cas où l'insertion se faisait à l'intérieur du tableau initial (la ligne 8 est à l'extérieur du tableau initial - Quand on remplit les cellules A8 à C8, il n'y a d'ailleurs pas insertion de cellules puisqu'elles existent, avec des valeurs "vide").
si on remplace ta formule par =INDIRECT(ADRESSE(EQUIV(MAX($B$3:$B$7);$B$3:$B$7;0 )+2;1;4))
la mise à jour se fait.
Je suis moi aussi preneur de l'explication.
Jacou
 
Re : Références dans les formules appliquées aux tableaux

Re, lézamis 🙂

Merci de participer.

En fait il y avait une erreur dans mes formules (réf à B7 au lieu de B8), mais ce n'était pas la seule cause du "dysfonctionnement" 🙂
Pour que la plage s'adapte à l'évolution du tableau, elle doit correspondre au départ à la taille du tableau 🙂

=INDIRECT(ADRESSE(EQUIV(MAX($B$3:$B$8);$B$3:$B$8;0)+2;1;4))
fonctionne alors qe :
=INDIRECT(ADRESSE(EQUIV(MAX($B$3:$B$8);$B$1:$B$8;0);1;4))
ne fonctionne pas.
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

  • Question Question
Réponses
1
Affichages
1 K
E
Réponses
5
Affichages
999
E
Retour