
Formule générique
=IF(ISBLANK(A1),"",COUNTA($A$1:A1))
Sommaire
Pour ajouter des numéros de ligne séquentiels à une liste de données, en ignorant les cellules vides, vous pouvez utiliser une formule basée sur COUNTA, ISBLANK et IF. Dans l'exemple illustré, la formule en B5 est:
=IF(ISBLANK(C5),"",COUNTA($C$5:C5))
Lorsque la formule est copiée dans la colonne, les lignes contenant une valeur sont numérotées et les lignes vides sont ignorées.
Explication
Dans l'exemple illustré, l'objectif est d'ajouter des numéros de ligne dans la colonne B uniquement lorsqu'il y a une valeur dans la colonne C. La formule en B5 est:
=IF(ISBLANK(C5),"",COUNTA($C$5:C5))
La fonction IF vérifie d'abord si la cellule C5 a une valeur avec la fonction ISBLANK:
ISBLANK(C5) // TRUE if empty, FALSE if not
Si C5 est vide, ISBLANK retourne TRUE et la fonction IF renvoie une chaîne vide ("") comme résultat. Si C5 n'est pas vide, ISBLANK renvoie FALSE et la fonction IF renvoie la fonction COUNTA avec une référence en expansion comme celle-ci:
COUNTA($C$5:C5) // expanding range
Lorsque la formule est copiée vers le bas, la plage se développe et COUNTA renvoie le nombre "actuel" de toutes les cellules non vides de la plage comme défini dans chaque ligne. COUNTA comptera les nombres et le texte.
Alternatives
Les deux formules ci-dessous effectuent la même tâche, mais avec une syntaxe différente:
=IF(C5="","",COUNTA($C$5:C5))
Même logique que ci-dessus, mais en utilisant = "" au lieu de ISBLANK.
=IF(C5"",COUNTA($C$5:C5),"")
Logique inversée. Si C5 n'est pas vide, renvoie le nombre, sinon renvoie une chaîne vide. Cette version utilise l'opérateur différent de ().