Accéder au contenu principal

Comment créer de nouvelles feuilles pour chaque ligne dans Excel ?

Author: Siluvia Last Modified: 2025-08-06

Dans les tâches de gestion de données ou de création de rapports, il peut parfois être nécessaire de séparer chaque enregistrement d'un tableau dans sa propre feuille de calcul. Par exemple, si vous maintenez une liste de détails d'étudiants dans Excel, avec chaque ligne représentant des informations pour un étudiant différent, vous pourriez souhaiter générer une feuille distincte pour chaque étudiant, chacune contenant leurs données spécifiques. Sinon, vous pouvez simplement vouloir diviser chaque ligne — quel que soit son contenu — afin que chacune soit placée dans une nouvelle feuille de calcul individuelle. Créer manuellement et copier les données dans de nouvelles feuilles peut être chronophage et sujet aux erreurs, surtout si vous travaillez avec un grand ensemble de données. Automatiser ce processus permet de gagner beaucoup de temps et réduit le risque d'erreurs. Ce guide vous explique deux solutions pratiques pour créer de nouvelles feuilles pour chaque ligne dans Excel et détaille les avantages et inconvénients de chaque méthode pour vous aider à choisir la meilleure approche pour votre situation.

Créer de nouvelles feuilles pour chaque ligne avec du code VBA
Créer de nouvelles feuilles pour chaque ligne avec l'utilitaire Split Data de Kutools pour Excel


Créer de nouvelles feuilles pour chaque ligne avec du code VBA

L'utilisation de VBA (Visual Basic for Applications) est un moyen efficace d'automatiser les tâches Excel qui seraient autrement fastidieuses et répétitives. Avec VBA, vous pouvez rapidement créer de nouvelles feuilles de calcul pour chaque ligne de vos données, soit en regroupant les lignes selon une colonne (comme un nom d'étudiant), soit en créant une feuille pour chaque ligne, indépendamment du contenu. Cette approche convient aux utilisateurs familiers avec l'éditeur VBA et qui préfèrent une solution hautement personnalisable. Cependant, elle nécessite de modifier et exécuter du code, ce qui peut ne pas convenir aux utilisateurs n'ayant pas d'expérience en VBA ou ne disposant pas des permissions pour exécuter des macros dans leur environnement.

1. Appuyez sur "Alt" + "F11" pour ouvrir la fenêtre Microsoft Visual Basic for Applications, qui vous permet d'accéder au code VBA pour automatiser les opérations Excel.

2. Dans la fenêtre Microsoft Visual Basic for Applications, cliquez sur Insert > Module pour ajouter un nouveau module de code. Ensuite, copiez et collez le code suivant dans la fenêtre Module.

Code VBA : créer une nouvelle feuille pour chaque ligne basée sur une colonne

Sub parse_data()
'Update by Extendoffice 2018/3/2
    Dim xRCount As Long
    Dim xSht As Worksheet
    Dim xNSht As Worksheet
    Dim I As Long
    Dim xTRrow As Integer
    Dim xCol As New Collection
    Dim xTitle As String
    Dim xSUpdate As Boolean
    Set xSht = ActiveSheet
    On Error Resume Next
    xRCount = xSht.Cells(xSht.Rows.Count, 1).End(xlUp).Row
    xTitle = "A1:C1"
    xTRrow = xSht.Range(xTitle).Cells(1).Row
    For I = 2 To xRCount
        Call xCol.Add(xSht.Cells(I, 1).Text, xSht.Cells(I, 1).Text)
    Next
    xSUpdate = Application.ScreenUpdating
    Application.ScreenUpdating = False
    For I = 1 To xCol.Count
        Call xSht.Range(xTitle).AutoFilter(1, CStr(xCol.Item(I)))
        Set xNSht = Nothing
        Set xNSht = Worksheets(CStr(xCol.Item(I)))
        If xNSht Is Nothing Then
            Set xNSht = Worksheets.Add(, Sheets(Sheets.Count))
            xNSht.Name = CStr(xCol.Item(I))
        Else
            xNSht.Move , Sheets(Sheets.Count)
        End If
        xSht.Range("A" & xTRrow & ":A" & xRCount).EntireRow.Copy xNSht.Range("A1")
        xNSht.Columns.AutoFit
    Next
    xSht.AutoFilterMode = False
    xSht.Activate
    Application.ScreenUpdating = xSUpdate
End Sub

Explication des paramètres et conseils d'utilisation :

  • A1:C1 est la plage d'en-tête de votre tableau de données. Ajustez cette référence pour correspondre à votre zone d'en-tête de données réelle si nécessaire.
  • Le code collecte les valeurs uniques de la colonne spécifiée (par défaut, la colonne A). Chaque valeur unique obtient sa propre feuille de calcul avec les lignes correspondantes.
  • Si votre tableau est plus large ou commence à partir d'une autre ligne, mettez à jour xTitle et les références de cellules en conséquence.
  • Si votre feuille de calcul contient des formules faisant référence à d'autres feuilles, vérifiez les références après avoir divisé.

3. Appuyez sur la touche F5 ou cliquez sur Exécuter pour lancer le code. De nouvelles feuilles de calcul seront créées après toutes les feuilles existantes dans le classeur actuel, chacune nommée en fonction de la valeur unique de la colonne choisie. Consultez la capture d'écran ci-dessous pour un exemple de résultat :

A screenshot showing a new workbook with sheets created from each row based on column value

Si vous souhaitez simplement diviser chaque ligne dans sa propre feuille de calcul, indépendamment du contenu des colonnes, vous pouvez utiliser le code VBA alternatif suivant. Cela élimine la nécessité de spécifier une condition de colonne.

Code VBA : Créer directement une nouvelle feuille pour chaque ligne

Sub RowToSheet()
	Dim xRow As Long
	Dim I As Long
	With ActiveSheet
		xRow = .Range("A" & Rows.Count).End(xlUp).Row
		For I = 1 To xRow
			Worksheets.Add(, Sheets(Sheets.Count)).Name = "Row " & I
			.Rows(I).Copy Sheets("Row " & I).Range("A1")
		Next I
	End With
End Sub

Après avoir exécuté ce code dans le module, chaque ligne de la feuille active — y compris la ligne d'en-tête — sera copiée dans une nouvelle feuille de calcul créée. Notez que la ligne d'en-tête est également dupliquée ; si vous souhaitez éviter cela, vous devrez peut-être supprimer ou ajuster manuellement les feuilles de sortie par la suite.

Dépannage et conseils pratiques :
- Si vous rencontrez une erreur telle que "Indice hors limite", assurez-vous que les noms de vos feuilles ne contiennent pas de caractères invalides ou de noms en double.
- Les grands ensembles de données peuvent entraîner un grand nombre de feuilles, ce qui peut ralentir Excel ou rendre la navigation difficile. Considérez si le fractionnement par ligne est nécessaire pour les très grands tableaux.
- Gardez toujours une sauvegarde de vos données avant d'exécuter du code VBA pour éviter toute perte de données involontaire.

Avantages : Gratuit ; hautement personnalisable.
Inconvénients : Nécessite l'activation de VBA/macros et une certaine familiarité avec l'éditeur VBA ; potentiel d'erreurs de code avec des données complexes ou inhabituelles.
Adapté pour : Utilisateurs ayant besoin de flexibilité de script, et pour des tâches ponctuelles ou irrégulières.


Créer de nouvelles feuilles pour chaque ligne avec l'utilitaire Split Data de Kutools pour Excel

Si vous préférez une approche simple et conviviale sans écrire de code, l'utilitaire Split Data de Kutools pour Excel est fortement recommandé. Cette fonction vous aide à diviser les données en nouvelles feuilles de calcul rapidement avec quelques clics seulement, simplifiant considérablement le processus de gestion des feuilles de calcul. Kutools est particulièrement utile pour les utilisateurs qui gèrent régulièrement de grands tableaux complexes ou qui préfèrent les interfaces graphiques à la programmation manuelle. Notez que Kutools est un add-in Excel et doit être installé à l'avance.

Kutools pour Excel propose plus de 300 fonctionnalités avancées pour simplifier les tâches complexes, augmentant ainsi la créativité et l'efficacité. Intégré à des capacités d'IA, Kutools automatise les tâches avec précision, rendant la gestion des données facile et sans effort. Informations détaillées sur Kutools pour Excel...  Essai gratuit...

1. Sélectionnez le tableau contenant les données que vous souhaitez diviser en feuilles individuelles. Ensuite, cliquez sur l'onglet Kutools Plus et sélectionnez Split Data. Reportez-vous à la capture d'écran ci-dessous pour plus de clarté :

A screenshot of the 'Split Data' option under the Kutools Plus tab in Excel

2. Dans la boîte de dialogue Diviser les données en plusieurs feuilles de calcul, choisissez les paramètres appropriés en fonction de vos besoins de division.

A. Pour créer de nouvelles feuilles basées sur des valeurs de colonne :

1). Sélectionnez l'option Colonne spécifique, puis spécifiez la colonne que vous souhaitez utiliser comme base de division — généralement un identifiant unique tel qu'un nom d'étudiant ou un ID.
2). Si vous souhaitez que chaque feuille soit nommée d'après sa valeur dans cette colonne, choisissez Valeurs de Colonne dans le menu déroulant Règle.
3). Cliquez sur OK pour exécuter la division. Consultez la capture d'écran ci-dessous :

A screenshot of the 'Split Data into Multiple Worksheets' dialog box with settings for splitting by column value

B. Pour créer directement de nouvelles feuilles pour chaque ligne :

1). Sélectionnez l'option Lignes fixes, et entrez 1 dans la case pour indiquer que chaque feuille de calcul doit contenir une seule ligne de données.
2). Pour la liste déroulante Règles, sélectionnez Numéros de ligne pour nommer chaque feuille par son index de ligne.
3). Cliquez sur OK pour commencer le processus de division. Reportez-vous à la capture d'écran ci-dessous :

A screenshot of the 'Split Data into Multiple Worksheets' dialog box with settings for splitting by row

Après exécution, un nouveau classeur sera généré contenant toutes les nouvelles feuilles de calcul — chacune peuplée en fonction des paramètres que vous avez sélectionnés.

Création de nouvelles feuilles pour chaque ligne basée sur des valeurs de colonne :

A screenshot showing a new workbook with sheets created from each row based on column value

Création d'une nouvelle feuille pour chaque ligne sans tenir compte des valeurs de colonne :

A screenshot showing a new workbook with sheets created from each row without considering the column value

Précautions et conseils pratiques :
- Avant d'utiliser l'utilitaire Split Data, assurez-vous qu'il n'y a pas de lignes vides dans votre tableau, car cela pourrait entraîner des feuilles vides.
- Revoyez les conventions de nommage des feuilles pour éviter des noms de feuilles en double ou invalides ; Kutools ajustera automatiquement en cas de conflit de noms.
- Le processus peut générer un grand nombre de feuilles de calcul si votre tableau est très volumineux, alors considérez cela avant de continuer.

Avantages : Facile à utiliser sans codage requis ; adapté pour le traitement par lots et les tâches fréquentes.
Inconvénients : Nécessite l'installation de l'add-in Kutools.
Adapté pour : Tous niveaux d'utilisateurs Excel, en particulier ceux traitant de la segmentation répétitive des données.

Kutools pour Excel - Boostez Excel avec plus de 300 outils essentiels. Profitez de fonctionnalités IA gratuites en permanence ! Obtenez-le maintenant


Démo : Créer de nouvelles feuilles pour chaque ligne avec l'utilitaire Split Data de Kutools pour Excel

 
Kutools pour Excel : Plus de 300 outils pratiques à portée de main ! Profitez de fonctionnalités IA définitivement gratuites ! Télécharger maintenant !

Meilleurs outils de productivité Office

🤖 Kutools AI Aide : Révolutionnez l'analyse de données grâce à : Exécution intelligente   |  Générer du code  |  Créer des Formules personnalisées  |  Analyser des données et générer des graphiques  |  Appeler les Fonctions améliorées
Fonctionnalités populaires : Trouver, mettre en évidence ou marquer les doublons   |  Supprimer les lignes vides   |  Combiner les colonnes ou cellules sans perdre de données   |  Arrondir...
Super RECHERCHEV : Recherche multi-critères    Recherche multi-valeurs  |   Recherche multi-feuilles   |   Correspondance floue ....
Liste déroulante avancée : Créer rapidement une liste déroulante   |  Liste déroulante dépendante   |  Liste déroulante avec sélection multiple ....
Gestionnaire de colonnes : Ajouter un nombre spécifique de colonnes  |  Déplacer des colonnes  |  Basculer l’état de visibilité des colonnes masquées  |  Comparer les plages & colonnes ...
Fonctionnalités à la une : Mise au point de la grille   |  Affichage de conception   |   Barre de formule améliorée    Gestionnaire de classeur & de feuille de calcul   |  Bibliothèque dAutoTexte (Auto Text)   |  Sélecteur de date   |  Fusionner les données   |  Chiffrer/Déchiffrer les cellules    Envoyer un e-mail par liste   |  Super Filtre   |   Filtre spécial (filtrer les cellules avec une police en gras/italique/barré...) ...
Top15 des ensembles d’outils12 outils de texte (Ajouter du texte, Supprimer des caractères spécifiques, ...)   |   Plus de50 types de graphiques (Diagramme de Gantt, ...)   |   Plus de40 formules intelligentes (Calculer lâge en fonction de la date de naissance, ...)   |   19 outils dinsertion (Insérer un code QR, Insérer une image depuis le chemin, ...)   |  12 outils de conversion (Convertir en mots, Conversion de devises, ...)   |  7 outils de fusion & division (Fusion avancée des lignes, Diviser les cellules, ...)   |   ... et bien plus encore
Utilisez Kutools dans votre langue préférée: compatible avec l’anglais, l’espagnol, l’allemand, le français, le chinois et plus de40 autres langues !

Dynamisez vos compétences Excel avec Kutools pour Excel et découvrez une efficacité inégalée. Kutools pour Excel propose plus de300 fonctionnalités avancées pour booster votre productivité et gagner du temps.  Cliquez ici pour obtenir la fonctionnalité la plus essentielle pour vous...


Office Tab apporte une interface à onglets à Office, et facilite grandement votre travail

  • Activez la modification et la lecture par onglets dans Word, Excel, PowerPoint, Publisher, Access, Visio et Project.
  • Ouvrez et créez plusieurs documents dans de nouveaux onglets de la même fenêtre, au lieu d’ouvrir de nouvelles fenêtres.
  • Augmentez votre productivité de50% et réduisez des centaines de clics de souris chaque jour!