Numérotation des lignes dans un filtre


9

Dans une plage avec filtre, je veux avoir une colonne de numéros de ligne qui changera en fonction du filtre , de sorte que les lignes comptent toujours consécutivement à partir de 1. Par exemple, ce qui suit est une plage avec filtre:

Number   Name    Gender
1        Alice   F
2        Jason   M
3        Ka      F
4        Fiona   F
5        Albert  M

Supposons maintenant que nous appliquions un filtre pour afficher les lignes où le sexe est M:

Number   Name    Gender
2        Jason   M
5        Albert  M

Ce qui précède est ce qu'Excel affiche normalement, mais je veux que le nombre compte à partir de 1 comme ceci:

Number   Name    Gender
1        Jason   M
2        Albert  M

Ainsi, les lignes doivent être renumérotées en fonction du filtre. J'ai essayé quelque chose comme =MAX(...)+1ou en utilisant la SUBTOTAL()fonction, mais je n'ai pas encore réussi. Est-il possible d'écrire une formule pour la colonne Numéro pour effectuer cette tâche? Comment?

Réponses:


13

Utilisez cette formule:

=AGGREGATE(3,5,$A$1:A1)

dans la cellule A2. (Cela suppose que vous avez un en-tête de colonne dans la cellule A1.)

Paramètres de AGGREGATE():

  • Function_num = 3, compte toutes les cellules non vides dans une plage
  • Options = 5, ignorer les lignes cachées de la plage
  • Tableau = $ A $ 1: A1, plage de la première ligne à la ligne au-dessus de la cellule sélectionnée

Exemple de sortie:

entrez la description de l'image ici

Comme mentionné par benshepherd, SUBTOTAL()peut également être utilisé.


1
Je n'en ai jamais entendu parler AGGREGATEauparavant.
Je vais certainement l'

6

@ Máté Juhász vient d'arriver devant moi. J'allais pour une approche alternative en utilisant SUBTOTAL. Dans A2, posez =SUBTOTAL(103,B$2:B2)et remplissez.

La SUBTOTALfonction exécute une fonction numérotée sur ses arguments - ces fonctions sont décrites dans l'aide. 103 correspond à COUNTAignorer les lignes cachées. (Vous utiliseriez une valeur de 3 pour inclure les lignes masquées.) COUNTACompte le nombre de cellules non vides dans une plage. Nous utilisons la B$2:B2syntaxe pour garder la cellule supérieure la même et élargir la plage au fur et à mesure que nous descendons la liste.

En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.