Vos deux formules fonctionnent parfaitement et répopnde à mon besoin.
DesseJ et JB : Merci pour votre aide
AV
{=INDEX(B10:B1000;MAX(SI(B10:B1000<>"";LIGNE(B10:B1000)));0)} Je n'obtiens que la valeur 0. Pourquoi ?
La raison est que la partie de la formule MAX(SI(B10:B1000<>"";LIGNE(B10:B1000))) renvoie le N° de ligne contenant la dernière valeur et non pas l'index de cette ligne dans la plage B10:B1000 qui, elle, commence en ligne 10. Il faut donc ajouter 9 pour avoir le bon index ou faire détecter, par calcul, le N° de la première ligne de la plage sur laquelle s'applique l'INDEX La formule pourrait donc être : =INDEX(B10:B1000;MAX((B10:B1000<>"")*(LIGNE(B10:B1000)))-9) ou bien avec plage nommée : Matricielle : =INDEX(plage;MAX((plage<>"")*(LIGNE(plage)))-(LIGNE(plage)-1)) Cette dernière méthode permet de déplacer la plage sans dommage pour le résultat !
AV
{=INDEX(B10:B1000;MAX(SI(B10:B1000<>"";LIGNE(B10:B1000)));0)}
Je n'obtiens que la valeur 0. Pourquoi ?
La raison est que la partie de la formule
MAX(SI(B10:B1000<>"";LIGNE(B10:B1000)))
renvoie le N° de ligne contenant la dernière valeur et non pas l'index de cette
ligne dans la plage B10:B1000 qui, elle, commence en ligne 10. Il faut donc
ajouter 9 pour avoir le bon index ou faire détecter, par calcul, le N° de la
première ligne de la plage sur laquelle s'applique l'INDEX
La formule pourrait donc être :
=INDEX(B10:B1000;MAX((B10:B1000<>"")*(LIGNE(B10:B1000)))-9)
ou bien avec plage nommée :
Matricielle :
=INDEX(plage;MAX((plage<>"")*(LIGNE(plage)))-(LIGNE(plage)-1))
Cette dernière méthode permet de déplacer la plage sans dommage pour le résultat
!
{=INDEX(B10:B1000;MAX(SI(B10:B1000<>"";LIGNE(B10:B1000)));0)} Je n'obtiens que la valeur 0. Pourquoi ?
La raison est que la partie de la formule MAX(SI(B10:B1000<>"";LIGNE(B10:B1000))) renvoie le N° de ligne contenant la dernière valeur et non pas l'index de cette ligne dans la plage B10:B1000 qui, elle, commence en ligne 10. Il faut donc ajouter 9 pour avoir le bon index ou faire détecter, par calcul, le N° de la première ligne de la plage sur laquelle s'applique l'INDEX La formule pourrait donc être : =INDEX(B10:B1000;MAX((B10:B1000<>"")*(LIGNE(B10:B1000)))-9) ou bien avec plage nommée : Matricielle : =INDEX(plage;MAX((plage<>"")*(LIGNE(plage)))-(LIGNE(plage)-1)) Cette dernière méthode permet de déplacer la plage sans dommage pour le résultat !