Comment créer une nouvelle feuille Excel pour chaque ligne ?
Dans le cadre de la gestion de données ou de tâches de reporting, il peut parfois s’avérer utile de placer chaque enregistrement d’un tableau dans sa propre feuille de calcul. Par exemple, si vous gérez une liste de coordonnées d’étudiants dans Excel — chaque ligne correspondant aux informations d’un étudiant différent — vous souhaiterez peut-être générer une feuille dédiée pour chacun, contenant uniquement ses données spécifiques. Vous pouvez aussi simplement vouloir isoler chaque ligne, quel que soit son contenu, dans une nouvelle feuille de calcul individuelle. Créer et copier manuellement ces données dans de nouvelles feuilles est non seulement chronophage, mais aussi sujet aux erreurs, particulièrement avec un grand volume d’informations. L’automatisation de ce processus permet de gagner un temps précieux tout en minimisant les risques d’erreurs. Ce guide vous propose deux solutions pratiques pour créer automatiquement une feuille distincte par ligne dans Excel, en détaillant les avantages et inconvénients de chaque méthode afin de vous aider à choisir celle qui convient le mieux à vos besoins.
Créer de nouvelles feuilles pour chaque ligne à l’aide d’un code VBA
Créer de nouvelles feuilles pour chaque ligne avec l’utilitaire Diviser les données de Kutools pour Excel
Créer de nouvelles feuilles pour chaque ligne à l’aide d’un code VBA
L’utilisation de VBA (Visual Basic for Applications) constitue un moyen efficace d’automatiser dans Excel des tâches autrement fastidieuses et répétitives. Grâce à VBA, vous pouvez créer rapidement une nouvelle feuille de calcul pour chaque ligne de vos données — soit en regroupant les lignes selon une colonne spécifique (comme le nom d’un étudiant), soit en générant une feuille distincte pour chaque ligne, quel que soit son contenu. Cette approche convient particulièrement aux utilisateurs à l’aise avec l’éditeur VBA et à la recherche d’une solution hautement personnalisable. Toutefois, elle exige la modification et l’exécution de code, ce qui peut ne pas convenir aux personnes sans expérience en VBA ou ne disposant pas des autorisations nécessaires pour exécuter des macros dans leur environnement.
1. Appuyez sur « Alt » + « F11 » pour ouvrir la fenêtre Microsoft Visual Basic pour Applications, qui vous permet d’accéder au code VBA destiné à automatiser vos opérations Excel.
2. Dans la fenêtre Microsoft Visual Basic pour Applications, cliquez sur Insertion > Module pour ajouter un nouveau module de code. Copiez ensuite le code suivant et collez-le dans la fenêtre du module.
Code VBA : créer une nouvelle feuille pour chaque ligne selon 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 correspond à la plage d’en-têtes de votre tableau de données. Ajustez cette référence pour qu’elle corresponde exactement à la zone réelle de vos en-têtes, si nécessaire.
- Le code extrait les valeurs uniques de la colonne indiquée (par défaut, la colonne A) et crée une feuille de calcul dédiée pour chacune d’elles, contenant les lignes correspondantes.
- Si votre tableau est plus large ou commence sur une ligne différente, mettez à jour
xTitleainsi que les références de cellules en conséquence. - Si votre feuille de calcul contient des formules faisant référence à d’autres feuilles, veillez à vérifier ces références après le fractionnement.
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 du classeur actuel, chacune portant le nom de la valeur unique choisie dans la colonne. Consultez la capture d’écran ci-dessous pour un exemple de résultat :

Si vous souhaitez simplement répartir chaque ligne dans sa propre feuille de calcul, indépendamment du contenu de la colonne, utilisez le code VBA alternatif ci-dessous — aucune condition liée à une colonne n’est alors requise.
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 l’exécution de ce code dans le module, chaque ligne de la feuille active — y compris l’en-tête — sera copiée vers une nouvelle feuille de calcul. Notez que l’en-tête est également dupliqué ; si vous souhaitez l’éviter, vous devrez peut-être supprimer ou ajuster manuellement les feuilles obtenues par la suite.
Dépannage et conseils pratiques :
- Si vous rencontrez une erreur telle que « Indice en dehors de la plage », assurez-vous que les noms de vos feuilles ne contiennent ni caractères non valides ni noms en double.
- Les grands jeux de données peuvent générer un grand nombre de feuilles, ce qui risque de ralentir Excel ou de rendre la navigation difficile. Réfléchissez bien à la pertinence de fractionner chaque ligne dans le cas de tableaux très volumineux.
- Sauvegardez toujours vos données avant d’exécuter un code VBA pour éviter toute perte accidentelle.
Avantages : Gratuit ; hautement personnalisable.
Inconvénients : Nécessite l’activation des macros/VBA et une certaine familiarité avec l’éditeur VBA ; risque d’erreurs de code avec des données complexes ou inhabituelles.
Convient à : Utilisateurs ayant besoin de flexibilité via des scripts, ainsi que pour des tâches ponctuelles ou irrégulières.
Créer de nouvelles feuilles pour chaque ligne avec l’utilitaire Diviser les données de Kutools pour Excel
Si vous préférez une approche simple et conviviale sans avoir à écrire de code, l’utilitaire Diviser les données de Kutools pour Excel est fortement recommandé. Cette fonctionnalité vous permet de diviser vos données en une nouvelle feuille de calcul en quelques clics seulement, simplifiant considérablement la gestion de vos classeurs. Kutools est particulièrement utile pour les utilisateurs qui manipulent régulièrement des tableaux volumineux et complexes ou qui préfèrent les interfaces graphiques à la programmation manuelle. Notez que Kutools est un complément Excel qui doit être installé au préalable.
1. Sélectionnez le tableau contenant les données que vous souhaitez fractionner en feuilles individuelles. Cliquez ensuite sur l’onglet KUTOOLS PLUS et sélectionnez Diviser les données. Reportez-vous à la capture d’écran ci-dessous pour plus de clarté :

2. Dans la boîte de dialogue Diviser les données en plusieurs feuilles de calcul, sélectionnez les paramètres adaptés à vos besoins de fractionnement.
A. Pour créer de nouvelles feuilles en fonction des valeurs d’une colonne :

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

Une fois l’opération exécutée, un nouveau classeur sera généré, contenant toutes les nouvelles feuilles de calcul — chacune remplie conformément aux paramètres que vous avez sélectionnés.
Création de nouvelles feuilles pour chaque ligne selon les valeurs d’une colonne :

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

Précautions et conseils pratiques :
- Avant d’utiliser l’utilitaire Diviser les données, assurez-vous qu’il n’y a aucune ligne vide dans votre tableau, car cela pourrait générer des feuilles vides.
- Vérifiez les conventions de nommage des feuilles pour éviter les doublons ou les noms de feuille non valides ; Kutools ajustera automatiquement les noms en cas de conflit.
- Le processus peut générer un grand nombre de feuilles si votre tableau est très volumineux : tenez-en compte avant de lancer l’opération.
Avantages : Facile à utiliser, aucune connaissance en codage requise ; idéal pour le traitement par lots et les tâches fréquentes.
Inconvénients : Nécessite l’installation préalable du complément Kutools.
Convient à : Tous les niveaux d’utilisateurs Excel, en particulier ceux qui effectuent régulièrement des segmentations de données répétitives.
Kutools pour Excel– Boostez Excel avec plus de 300 outils essentiels, pour gagner en rapidité et en simplicité, et profitez des fonctionnalités d’intelligence artificielle pour un traitement de données plus intelligent et une productivité accrue.Obtenez-le dès maintenant
Démo : créer de nouvelles feuilles pour chaque ligne avec l’utilitaire Diviser les données de Kutools pour Excel
Meilleurs outils de productivité Office
Boostez vos compétences Excel avec Kutools pour Excel et découvrez une efficacité inégalée.Kutools pour Excel propose plus de 300 fonctionnalités avancées pour améliorer votre productivité et Gagner du temps.Cliquez ici pour obtenir la fonctionnalité dont vous avez le plus besoin...
Office Tab apporte une interface à onglets à Office et rend votre travail bien plus facile
- Activez l’édition 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, plutôt que dans de nouvelles fenêtres.
- Augmente votre productivité de 50 % et vous fait économiser des centaines de clics de souris chaque jour !
Tous les compléments Kutools. Un seul installateur
Kutools for Office regroupe les compléments pour Excel, Word, Outlook et PowerPoint, ainsi que Office Tab Pro, ce qui en fait le choix idéal pour les équipes travaillant à travers les applications Office.
- Suite tout-en-un— Compléments Excel, Word, Outlook et PowerPoint + Office Tab Pro
- Un seul installateur, une seule licence— installation en quelques minutes (compatible MSI)
- Fonctionne mieux ensemble— productivité optimisée dans toutes les applications Office
- Essai gratuit de 30 jours avec toutes les fonctionnalités— aucune inscription, aucune carte bancaire
- Meilleur rapport qualité-prix— économisez par rapport à l’achat de compléments individuels