Recherche & RéférenceDébutant

Fonction LIGNE ExcelGuide Complet 2026 avec Exemples

LIGNE (ROW en anglais) est une fonction Excel simple mais incroyablement polyvalente. Elle retourne le numéro de ligne d'une référence donnée ou de sa propre position dans la feuille. Que tu veuilles numéroter automatiquement tes données, créer des formules dynamiques qui s'adaptent à leur position, ou construire des tableaux de bord interactifs, LIGNE est ton alliée.

Dans ce guide, tu vas découvrir comment exploiter LIGNE pour automatiser tes tâches répétitives et créer des formules qui restent valides même quand ta structure de données change. C'est une de ces fonctions qui paraissent basiques au premier abord, mais qui deviennent indispensables une fois que tu en maîtrises les subtilités et les cas d'usage avancés.

Syntaxe de la fonction LIGNE

=LIGNE([référence])

La fonction LIGNE accepte un seul argument optionnel. Si tu ne mets aucun argument, elle retourne le numéro de la ligne où elle se trouve. Si tu fournis une référence de cellule ou de plage, elle retourne le numéro de la première ligne de cette référence. C'est cette flexibilité qui rend LIGNE si puissante.

Comprendre chaque paramètre

1

référence

(obligatoire)
(optionnel)

C'est la cellule ou la plage dont tu veux connaître le numéro de ligne. Ça peut être une référence simple comme A5 (retourne 5), une plage comme B10:D15 (retourne 10, la première ligne de la plage), une référence nommée, ou même totalement omis.

Si tu omets cet argument : LIGNE() retourne le numéro de la ligne où se trouve la formule elle-même. Si ta formule est en C7, =LIGNE() retournera 7. C'est cette version sans argument qui est la plus utilisée pour créer des numérotations automatiques et des formules dynamiques.

Comportement avec les plages : Quand tu passes une plage comme A5:A10, LIGNE retourne le numéro de la première ligne (5). Mais dans une formule matricielle, LIGNE(A5:A10) génère un tableau {5;6;7;8;9;10} avec tous les numéros de ligne de la plage. C'est ultra-puissant dans Excel 365 !

Exemples concrets : =LIGNE() en cellule A10 donne 10. =LIGNE(C5) donne toujours 5. =LIGNE(B3:B8) donne 3. =LIGNE(MaPlage) donne le numéro de la première ligne de la plage nommée "MaPlage".

Astuce de pro : Utilise LIGNE() sans argument dans tes formules de numérotation automatique. Quand tu insères ou supprimes des lignes, la numérotation se met à jour automatiquement. C'est bien plus robuste que de taper 1, 2, 3 manuellement ou d'utiliser la poignée de recopie incrémentée !

Exemples pratiques pas à pas

Exemple 1 – Chef de projet : numéroter automatiquement les tâches

Tu es chef de projet et tu gères une liste de tâches dans Excel. Tu veux que chaque tâche ait un numéro unique qui se met à jour automatiquement quand tu réorganises la liste, ajoutes de nouvelles tâches ou supprimes des tâches terminées. Fini la renumérotation manuelle après chaque changement !

En A2, la formule =LIGNE()-1 retourne 1. Quand tu la copies vers le bas, elle s'adapte automatiquement : ligne 3 donne 2, ligne 4 donne 3, etc.

ABCD
1TâcheResponsableStatut
21Définir le cahier des chargesMarieTerminé
32Créer les maquettes UX/UIPierreEn cours
43Développer le prototypeSophieÀ faire
54Tests utilisateursLucasÀ faire
65Déploiement productionMarieÀ faire
Formule :=LIGNE()-1
Résultat :1 (si la formule est en ligne 2)

Pourquoi -1 ? Parce que tes données commencent en ligne 2 (après l'en-tête en ligne 1). Si tu supprimes la ligne 3 (tâche de Pierre), les numéros suivants se mettent à jour instantanément pour rester consécutifs. Magique pour maintenir une liste ordonnée !

Exemple 2 – Analyste commercial : créer des références de vente dynamiques

Tu es analyste commercial et tu veux générer automatiquement des références de vente au format "VTE-2026-001", "VTE-2026-002", etc. Le numéro doit s'incrémenter automatiquement sans saisie manuelle, et l'année doit se mettre à jour chaque année. Cette automatisation te fait gagner un temps précieux sur les tâches répétitives.

Cette formule combine LIGNE avec ANNEE, AUJOURDHUI et TEXTE pour créer un identifiant unique et formaté. Le numéro est toujours sur 3 chiffres (001, 002...).

ABCD
1RéférenceClientMontantDate
2VTE-2026-001Entreprise ABC2 500 €15/01/2026
3VTE-2026-002Société XYZ1 800 €16/01/2026
4VTE-2026-003Client Pro3 200 €17/01/2026
5VTE-2026-004Startup Tech950 €18/01/2026
Formule :="VTE-"&ANNEE(AUJOURDHUI())&"-"&TEXTE(LIGNE()-1;"000")
Résultat :VTE-2026-001

La fonction TEXTE formate le numéro avec des zéros devant (001 au lieu de 1). ANNEE(AUJOURDHUI()) récupère l'année en cours, donc en 2027 tes références passeront automatiquement à VTE-2027-XXX. Si tu ajoutes une nouvelle ligne, la référence se génère toute seule. Intelligent, non ?

Exemple 3 – Contrôleur financier : mise en forme de lignes alternées

Tu es contrôleur financier et tu veux améliorer la lisibilité de tes rapports financiers en colorant automatiquement une ligne sur deux. Au lieu de le faire manuellement (et de tout recommencer quand tu ajoutes des lignes), tu utilises LIGNE avec la mise en forme conditionnelle pour un résultat dynamique et professionnel.

Dans la mise en forme conditionnelle, cette formule colore automatiquement les lignes paires. MOD(LIGNE();2) donne 0 pour les nombres pairs, 1 pour les impairs.

ABCDE
1MoisRevenusDépensesRésultatMarge %
2Janvier45 000 €32 000 €13 000 €28,9%
3Février52 000 €35 000 €17 000 €32,7%
4Mars48 000 €33 500 €14 500 €30,2%
5Avril61 000 €38 000 €23 000 €37,7%
Formule :=MOD(LIGNE();2)=0
Résultat :VRAI pour lignes paires (fond coloré)

Pour colorer les lignes impaires au lieu des paires, utilise =MOD(LIGNE();2)=1. Tu peux même créer des motifs plus complexes : =MOD(LIGNE();3)=0 colore une ligne sur trois, =MOD(LIGNE();4)=0 une ligne sur quatre. Cette technique améliore considérablement la lisibilité de tes tableaux !

Exemple 4 – Responsable RH : formules dynamiques basées sur la position

Tu travailles aux ressources humaines et tu gères un tableau de présence où tu veux calculer automatiquement les heures supplémentaires uniquement pour les employés à temps plein (lignes 2 à 10), mais pas pour les stagiaires (lignes 11 et suivantes). LIGNE te permet de créer des formules qui s'adaptent automatiquement selon la position.

La formule vérifie la position de la ligne : si ≤10 (temps plein), elle calcule la prime. Sinon, elle affiche '-' pour les stagiaires.

ABCDE
1EmployéTypeHeures travailléesHeures supPrime
2Marie DupontTemps plein42h2h60 €
3Pierre MartinTemps plein38h0h0 €
4Sophie BernardTemps plein45h5h150 €
5Lucas DuboisStagiaire35h--
Formule :=SI(LIGNE()<=10;MAX(0;C2-35)*30;"-")
Résultat :60 € (2h × 30 €/h)

Cette technique est puissante pour créer des sections dans tes tableaux avec des règles de calcul différentes. Par exemple : =SI(LIGNE()<=20;"Budget Q1";"Budget Q2") pour séparer automatiquement les trimestres, ou =SI(LIGNE()<=50;"Standard";"Premium") pour des niveaux de tarification.

Les erreurs fréquentes et comment les corriger

Oublier d'ajuster pour les lignes d'en-tête

Si tu utilises =LIGNE() directement en ligne 2 (première ligne de données après l'en-tête), ta numérotation commencera à 2 au lieu de 1. Beaucoup de débutants se trompent ici et se retrouvent avec une numérotation décalée de 1, 2 ou même plus selon leur structure.

Solution : Soustrais le nombre de lignes d'en-tête. Si tes données commencent en ligne 2, utilise =LIGNE()-1. Si elles commencent en ligne 3 (deux lignes d'en-tête), utilise =LIGNE()-2. Si tu as plusieurs lignes avant tes données (titre, date, etc.), compte-les toutes et soustrais ce nombre.

Confusion entre LIGNE et LIGNES

LIGNE au singulier te donne le numéro d'une ligne (5 pour A5). LIGNES au pluriel compte combien de lignes il y a dans une plage (6 pour A5:A10, car il y a 6 lignes de la ligne 5 à la ligne 10). Les débutants mélangent souvent les deux et obtiennent des résultats inattendus.

Solution : Mémorise cette distinction simple : LIGNE = position (où ?), LIGNES = quantité (combien ?). Tu veux savoir à quelle ligne tu es ? LIGNE. Tu veux savoir combien de lignes contient une plage ? LIGNES.

Références absolues qui cassent l'auto-incrémentation

Si tu utilises =LIGNE($A$1) avec une référence absolue (symboles $) et que tu copies la formule vers le bas, tu obtiendras toujours 1. La référence ne s'ajuste pas lors de la copie, donc le résultat reste figé. Ta numérotation affiche alors 1, 1, 1, 1... au lieu de 1, 2, 3, 4...

Solution : Pour une numérotation automatique, n'utilise PAS de $ (références absolues). Écris =LIGNE(A1) sans symboles dollar pour que la référence s'ajuste, ou mieux encore, =LIGNE()-1 qui ne nécessite aucune référence de cellule et fonctionne toujours.

Problème avec les tableaux structurés (Ctrl+T)

Dans un tableau Excel structuré (créé avec Ctrl+T ou Insertion → Tableau), LIGNE() retourne toujours la ligne absolue de la feuille, pas la position relative dans le tableau. Si ton tableau commence en ligne 10, la première donnée sera numérotée 10 au lieu de 1, ce qui est rarement ce que tu veux.

Solution : Dans un tableau structuré, ajuste manuellement : =LIGNE()-9 si ton tableau commence en ligne 10 (9 lignes avant). Ou utilise une approche plus robuste avec =LIGNE()-LIGNE(Tableau1[#En-têtes]) qui s'adapte automatiquement à la position du tableau.

Formules qui ne se mettent pas à jour après tri

Quand tu tries tes données, les formules LIGNE() ne se "déplacent" pas avec les lignes. Résultat : ta numérotation devient 1, 3, 2, 5, 4 au lieu de rester 1, 2, 3, 4, 5. C'est normal car LIGNE() reflète la position physique dans la feuille, pas un ordre logique.

Solution : Si tu dois trier souvent, convertis tes formules en valeurs (Copier → Collage spécial → Valeurs) avant de trier, puis recalcule-les après. Ou utilise une colonne d'ID fixe créée une fois pour toutes au lieu de formules LIGNE() dynamiques.

Astuces avancées avec LIGNE

Créer des lignes alternées colorées automatiquement :

Utilise la mise en forme conditionnelle avec la formule =MOD(LIGNE();2)=0 pour colorer automatiquement une ligne sur deux (lignes paires). Pour colorer les lignes impaires, utilise =MOD(LIGNE();2)=1. Résultat : un tableau beaucoup plus lisible avec un effet "zébré" professionnel qui s'adapte quand tu ajoutes des lignes.

Générer des séquences mathématiques personnalisées :

Combine LIGNE avec des opérations arithmétiques : =LIGNE()*2 génère 2, 4, 6, 8... (nombres pairs). =LIGNE()*2-1 donne 1, 3, 5, 7... (nombres impairs). =LIGNE()*5 crée 5, 10, 15, 20... (multiples de 5). Parfait pour créer rapidement des séquences personnalisées sans formules complexes.

Combiner LIGNE avec INDIRECT pour des références dynamiques :

La formule =INDIRECT("A"&LIGNE()+10) référence toujours la cellule 10 lignes plus bas dans la colonne A. Super pratique pour créer des comparaisons décalées dans le temps (mois actuel vs mois de l'année dernière : =B2/INDIRECT("B"&LIGNE()-12) pour calculer une évolution annuelle).

Formules matricielles avec LIGNE dans Excel 365 :

Dans Excel 365, =LIGNE(A1:A10) génère automatiquement un tableau vertical dynamique avec les numéros 1 à 10 qui déborde sur plusieurs cellules. Tu peux l'utiliser dans des calculs : =AUJOURDHUI()+LIGNE(1:7) crée les 7 prochains jours, =SEQUENCE(10)*5 ou =LIGNE(1:10)*5 génère les 10 premiers multiples de 5.

Créer des formules conditionnelles basées sur la position :

Utilise LIGNE() dans des conditions : =SI(MOD(LIGNE();3)=0;"Total";"Donnée") affiche "Total" toutes les 3 lignes. Ou =SI(LIGNE()<=10;"Budget prévisionnel";"Budget réalisé") pour changer de catégorie selon la position. Idéal pour structurer automatiquement des rapports complexes.

Numérotation avec préfixe variable selon la position :

Combine LIGNE avec CHOISIR pour des préfixes dynamiques : =CHOISIR(ARRONDI.SUP(LIGNE()/10;0);"A";"B";"C")&LIGNE() crée A1, A2... A10, puis B11, B12... B20, puis C21... Parfait pour catégoriser automatiquement selon la position dans une longue liste.

Créer des numérotations continues même avec des lignes masquées :

Contrairement aux numéros saisis manuellement qui "sautent" quand tu filtres un tableau, =LIGNE()-1 maintient une numérotation qui reflète la position réelle. Si tu veux une numérotation qui s'ajuste aux filtres et reste 1,2,3,4 même après filtrage, utilise plutôt =SOUS.TOTAL(103;$A$2:A2) pour compter uniquement les lignes visibles.

Utiliser LIGNE pour créer des calendriers dynamiques :

Tu peux créer un calendrier de 7 jours avec =AUJOURDHUI()+LIGNE()-2 (si ta formule commence en ligne 2). Pour un calendrier mensuel, combine avec TEXTE : =TEXTE(AUJOURDHUI()+LIGNE()-2;"JJJ JJ/MM") affiche "Lun 30/12", "Mar 31/12", etc. Les dates se mettent à jour automatiquement chaque jour !

Comparaison avec les fonctions similaires

CritèreLIGNECOLONNELIGNESCOLONNES
Ce qu'elle retourneNuméro de ligne (position)Numéro de colonne (position)Nombre de lignes (quantité)Nombre de colonnes (quantité)
Exemple A551 (colonne A = 1)1 (une seule ligne)1 (une seule colonne)
Exemple A5:C105 (première ligne)1 (première colonne : A)6 (six lignes : 5 à 10)3 (trois colonnes : A à C)
Sans argument✅ Oui (ligne actuelle)✅ Oui (colonne actuelle)❌ Non (argument obligatoire)❌ Non (argument obligatoire)
Formule matricielle✅ Génère tableau de positions✅ Génère tableau de positions❌ Retourne un seul nombre❌ Retourne un seul nombre
Usage typiqueNumérotation auto, formules dynamiquesNumérotation horizontale, INDEXCompter lignes, dimensionner plagesCompter colonnes, dimensionner plages

ADRESSE : Créer une référence textuelle

ADRESSE combine un numéro de ligne et un numéro de colonne pour créer une référence de cellule sous forme de texte. Par exemple, =ADRESSE(5;3) retourne "$C$5". Elle est souvent utilisée avec LIGNE et COLONNE pour construire des références dynamiques.

Exemple combiné : =ADRESSE(LIGNE();COLONNE()+1) retourne la référence de la cellule juste à droite. Combine-la avec INDIRECT pour obtenir la valeur : =INDIRECT(ADRESSE(LIGNE();COLONNE()+1))

INDIRECT : Convertir du texte en référence active

INDIRECT transforme une chaîne de texte en référence de cellule valide. Elle est le complément parfait de LIGNE pour créer des références totalement dynamiques. Par exemple, =INDIRECT("A"&LIGNE()) référence toujours la cellule dans la colonne A de la ligne courante.

Cas d'usage avec LIGNE : =SOMME(INDIRECT("B"&LIGNE()&":E"&LIGNE())) fait la somme de B à E sur la ligne actuelle. Ou =INDIRECT("Feuille"&LIGNE()&"!A1") pour référencer différentes feuilles dynamiquement.

Retiens cette distinction fondamentale : LIGNE et COLONNE donnent une position (où dans la feuille ?), tandis que LIGNES et COLONNES donnent une quantité (combien d'éléments ?). ADRESSE construit des références textuelles, et INDIRECT les convertit en références actives. Ces 6 fonctions forment un écosystème puissant pour créer des formules vraiment dynamiques.

Questions fréquentes

Quelle est la différence entre LIGNE et LIGNES ?

LIGNE retourne le numéro de ligne d'une référence (par exemple, 5 pour la cellule A5), tandis que LIGNES compte le nombre de lignes dans une plage. Si tu utilises =LIGNE(A5:A10), tu obtiens 5 (le numéro de la première ligne). Avec =LIGNES(A5:A10), tu obtiens 6 (car il y a 6 lignes dans cette plage).

Comment utiliser LIGNE pour créer une numérotation automatique ?

La technique la plus simple est =LIGNE()-1 si tes données commencent en ligne 2, ou =LIGNE(A1) si tu veux une numérotation qui commence à 1. Quand tu copies la formule vers le bas, elle s'ajuste automatiquement : 1, 2, 3, 4... L'avantage ? Si tu insères ou supprimes des lignes, la numérotation se met à jour toute seule.

Pourquoi utiliser LIGNE() sans argument plutôt qu'avec ?

LIGNE() sans argument retourne le numéro de la ligne où se trouve la formule. C'est hyper pratique pour créer des formules dynamiques qui s'adaptent automatiquement quand tu les copies ailleurs. Pas besoin de modifier la formule manuellement. Par contre, LIGNE(A5) retournera toujours 5, peu importe où tu copies la formule.

Peut-on utiliser LIGNE pour colorer une ligne sur deux ?

Absolument ! Utilise la mise en forme conditionnelle avec =MOD(LIGNE();2)=0 pour les lignes paires ou =MOD(LIGNE();2)=1 pour les lignes impaires. Cette formule vérifie si le numéro de ligne est divisible par 2. Résultat : un beau tableau avec des lignes alternées qui améliore considérablement la lisibilité.

LIGNE fonctionne-t-elle dans les formules matricielles et Excel 365 ?

Oui, et c'est là qu'elle devient vraiment puissante ! Dans Excel 365, =LIGNE(A1:A10) génère un tableau dynamique {'{1;2;3;4;5;6;7;8;9;10}'} qui déborde automatiquement. Tu peux l'utiliser dans des calculs complexes comme =AUJOURDHUI()+LIGNE(1:7) pour créer les 7 prochains jours. Dans les versions antérieures, valide avec Ctrl+Maj+Entrée.

Les fonctions similaires à LIGNE

Deviens un pro d'Excel

Tu maîtrises maintenant LIGNE ! Rejoins Le Dojo Club pour découvrir les autres fonctions essentielles et créer des formules encore plus puissantes et automatisées.

Essayer pendant 30 jours