Exceller

Obtenir les numéros de ligne relatifs dans la plage

Get Relative Row Numbers Range

Formule Excel : obtenir les numéros de ligne relatifs dans la plageFormule générique |_+_| Sommaire

Pour obtenir un ensemble complet de numéros de ligne relatifs dans une plage, vous pouvez utiliser une formule matricielle basée sur la fonction ROW. Dans l'exemple illustré, la formule dans B5:B11 est :





{= ROW (range)- ROW (range.firstcell)+1}

Remarque : il s'agit d'un formule matricielle qui doit être entré avec Control + Shift + Enter. Si vous entrez cela dans la feuille de calcul (et non dans une autre formule), effectuez une sélection qui comprend plus d'une ligne, entrez la formule et confirmez avec Ctrl + Maj + Entrée.

Cette formule continuera à générer des nombres relatifs même lorsque la plage est déplacée. Cependant, ce n'est pas un bon choix si des lignes doivent être triées, supprimées ou ajoutées, car la formule matricielle empêchera les modifications. Les options de formule expliquées ici sont fonctionnera mieux.





Explication

La première fonction ROW génère un tableau de 7 nombres comme celui-ci :

 
{= ROW (B5:B11)- ROW (B5)+1}

La deuxième fonction ROW génère un tableau avec un seul élément comme celui-ci :



 
{567891011}

qui est ensuite soustrait du premier tableau pour donner :

 
{5}

Enfin, 1 est ajouté pour obtenir :

 
{0123456}

Version générique avec plage nommée

Avec un plage nommée , vous pouvez créer une version plus générique de la formule à l'aide de la fonction MIN ou de la fonction INDEX. Par exemple, avec la plage nommée 'list', vous pouvez utiliser MIN comme ceci :

 
{1234567}

Avec INDEX, nous récupérons la première référence dans la plage nommée, et en utilisant ROW sur celle-ci :

 
{ ROW (list)- MIN ( ROW (list))+1}

Vous verrez souvent des formules de « ligne relative » comme celle-ci dans des formules matricielles complexes qui nécessitent des numéros de ligne pour calculer un résultat.

Avec SÉQUENCE

Avec le Fonction SÉQUENCE la formule pour renvoyer les numéros de ligne relatifs pour une plage est simple :

 
{= ROW (list)- ROW ( INDEX (list,1,1))+1}

Les Fonction LIGNES fournit le nombre de lignes, qui est renvoyé à la fonction SEQUENCE. SEQUENCE construit ensuite un tableau de nombres, en commençant par le nombre 1. Ainsi, en suivant l'exemple original ci-dessus, la formule ci-dessous renvoie le même résultat :

exceller si la cellule est dans la liste
 
= SEQUENCE ( ROWS (range))

Remarque : la formule SEQUENCE est une nouvelle fonction de tableau dynamique disponible uniquement en Excel 365 .

Auteur Dave Bruns


^