Accéder au contenu principal

Comment dupliquer des lignes en fonction de la valeur d'une cellule dans une colonne ?

Author: Xiaoyang Last Modified: 2025-07-21

Lorsque vous travaillez avec des tableaux de données Excel, vous pourriez parfois avoir besoin de dupliquer des lignes entières en fonction d'une valeur dans une colonne spécifique. Par exemple, imaginez que vous avez un tableau où la colonne D indique un nombre, et votre objectif est de copier ou d'insérer chaque ligne autant de fois que la valeur correspondante dans la colonne D. Cela peut être utile pour l'expansion des données, la préparation de jeux de données pour les tests, la simulation d'inventaire, ou la génération de lignes de commandes répétées. Réaliser cela efficacement sans répétition manuelle aide à maintenir l'intégrité des données et accélère considérablement le flux de travail, surtout pour les grands tableaux.

Screenshot showing data table with numbers in column D before duplicating rows based on values Arrow Screenshot showing data table after duplicating rows based on column D values in Excel

Dupliquer des lignes plusieurs fois en fonction des valeurs des cellules avec du code VBA

Copier et insérer des lignes en fonction d'un nombre spécifié de fois avec un outil pratique - Kutools pour Excel

Dupliquer des lignes via une transformation Power Query


Dupliquer des lignes plusieurs fois en fonction des valeurs des cellules avec du code VBA

Si vous devez rapidement créer des doublons de lignes entières en fonction des valeurs dans une colonne spécifique (par exemple, dans la colonne D), VBA offre une solution directe et efficace. Cette approche est particulièrement précieuse lors de la manipulation de grands ensembles de données, car elle automatise le processus et aide à garantir l'exactitude. Cependant, travailler avec VBA nécessite une connaissance de base de l'onglet Développeur d'Excel et une compréhension de la manière d'exécuter des macros. Le principal avantage est la flexibilité : le code peut être ajusté pour s'adapter à différentes plages ou colonnes cibles. En revanche, si vous n'êtes pas à l'aise avec VBA ou si les politiques de sécurité bloquent les macros dans votre environnement, envisagez l'une des solutions alternatives ci-dessous.

1. Maintenez les touches ALT + F11 enfoncées pour ouvrir la fenêtre Microsoft Visual Basic for Applications.

2. Cliquez sur Insertion > Module, puis collez le code suivant dans la fenêtre Module.

Code VBA : Dupliquer des lignes plusieurs fois en fonction de la valeur d'une cellule :

Sub CopyData()
'Updateby Extendoffice
    Dim xRow As Long
    Dim VInSertNum As Variant
    xRow = 1
    Application.ScreenUpdating = False
    Do While (Cells(xRow, "A") <> "")
        VInSertNum = Cells(xRow, "D")
        If ((VInSertNum > 1) And IsNumeric(VInSertNum)) Then
           Range(Cells(xRow, "A"), Cells(xRow, "D")).Copy
           Range(Cells(xRow + 1, "A"), Cells(xRow + VInSertNum - 1, "D")).Select
           Selection.Insert Shift:=xlDown
           xRow = xRow + VInSertNum - 1
        End If
        xRow = xRow + 1
    Loop
    Application.ScreenUpdating = False
End Sub

3. Appuyez ensuite sur la touche F5 pour exécuter ce code. Les lignes entières seront dupliquées plusieurs fois en fonction de la valeur de la cellule dans la colonne D, répondant ainsi à vos besoins.

Remarque : Dans le code ci-dessus, la lettre A représente la première colonne de votre plage de données sélectionnée, et D est la lettre de la colonne utilisée pour le nombre de duplications. Modifiez ces lettres au besoin pour qu'elles correspondent à votre propre feuille de calcul. Avant d'exécuter des macros, n'oubliez pas de sauvegarder votre classeur, car les opérations de macro ne peuvent pas être annulées. Si un message d'erreur apparaît, vérifiez si votre plage de données sélectionnée et les colonnes cibles sont cohérentes.

Copier et insérer des lignes en fonction d'un nombre spécifié de fois avec un outil pratique - Kutools pour Excel

Si vous préférez une méthode sans utiliser de code, ou si vous souhaitez une interface conviviale pour gérer la duplication en lot, Kutools pour Excel propose une solution pratique. Sa fonction Dupliquer des lignes/colonnes en fonction de la valeur d'une cellule vous permet de copier et d'insérer rapidement des lignes en fonction du nombre spécifié dans les cellules concernées. Cela est idéal pour ceux qui effectuent régulièrement de telles opérations de duplication et ont besoin d'un processus visuel et personnalisable. Kutools conserve la mise en page et la mise en forme du tableau d'origine lors de la duplication, réduisant ainsi le risque d'erreurs accidentelles. Cette méthode fonctionne sans problème, quel que soit votre expérience avec VBA, et améliore considérablement l'efficacité pour les plages de données moyennes à grandes.

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. Cliquez sur Kutools > Insérer > Dupliquer des lignes/colonnes en fonction de la valeur d'une cellule pour activer cette fonctionnalité ;
  2. Ensuite, choisissez l'option Copier et insérer des lignes, et spécifiez séparément les cellules de la plage d'insertion et du nombre de répétitions dans la boîte de dialogue. Confirmez vos choix et cliquez sur OK.

Screenshot of Kutools for Excel Duplicate Rows/Columns feature dialog box


Dupliquer des lignes via une transformation Power Query

Power Query fournit une solution robuste et reproductible pour dupliquer des lignes en fonction d'une valeur de colonne - idéale pour les grands tableaux ou lorsque vous devez actualiser les données fréquemment. En utilisant cet outil, vous pouvez développer des lignes selon des indicateurs numériques sans formules ni code. Cette méthode convient bien aux utilisateurs qui souhaitent un processus visuellement explicatif, étape par étape, et ont besoin de reproductibilité avec les mises à jour futures des données.

1. Ajoutez vos données à un tableau Excel (sélectionnez la plage et appuyez sur Ctrl+T). Allez dans Données > À partir du tableau/plage pour charger votre tableau dans Power Query.

2. Dans l'Éditeur Power Query, sélectionnez l'onglet Ajouter une colonne et cliquez sur Colonne personnalisée.

3. Tapez la formule suivante pour générer une liste pour chaque ligne en fonction de la valeur dans la colonne D. ( Remarque : Vous devez remplacer [D] par votre véritable en-tête de colonne. Par exemple, ici, je sélectionnerai les Temps de duplication et cliquerai sur le bouton Insérer pour remplacer l'argument [D].)

List.Repeat({1}, [D])

set options in the Power Query Editor

4. Cliquez sur le bouton Développer à côté de la nouvelle colonne personnalisée et cliquez sur Développer vers de nouvelles lignes.

Click the Expand button

5. Ensuite, vous pouvez voir que les données ont été dupliquées en fonction des valeurs dans la colonne D, voir la capture d'écran :

the data has been duplicated based on the values

6. Supprimez les colonnes d'aide si nécessaire, et cliquez sur Fermer et charger pour retourner les données à Excel.

Astuce : Chaque fois que vos données sources changent, il suffit d'actualiser la sortie Power Query pour mettre à jour automatiquement les lignes répétées. Cela garantit l'efficacité et la précision pour les processus de données continus ou automatisés. Power Query est intégré à Excel 2016 et versions ultérieures, et est disponible en tant que module complémentaire gratuit dans les versions antérieures. Si votre version d'Excel ne dispose pas de Power Query ou si vous ne pouvez pas créer de requêtes, envisagez d'utiliser l'une des solutions de formule ou VBA mentionnées ci-dessus.

Meilleurs outils de productivité pour Office

🤖 Kutools AI Aide : Révolutionner l'analyse des données basée sur : Exécution intelligente   |  Générer du code  |  Créer des formules personnalisées  |  Analyser les données et générer des graphiques  |  Invoquer les Fonctions améliorées
Fonctionnalités populaires : Trouver, mise en évidence ou marquer les doublons   |  Supprimer les lignes vides   |  Consolider les colonnes ou les cellules sans perdre de données   |   Arrondir sans formule ...
Super RECHERCHEV : RECHERCHEV avec critères multiples    RECHERCHEV avec valeurs multiples  |   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 multi-sélection ....
Gestionnaire de colonnes : Ajouter un nombre spécifique de colonnes  |  Déplacer les colonnes  |  Basculer l'état de visibilité des colonnes masquées  |  Comparer les plages & colonnes ...
Fonctionnalités en vedette : Mise au point de la grille   |  Affichage de conception   |   Barre de formule améliorée    Gestionnaire de classeur & feuille de calcul   |  Bibliothèque dAutoTexte (Auto Text)   |  Sélecteur de date   |  Fusionner les données   |  Crypter/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 ensembles d'outils12 outils de texte (Ajouter du texte, Supprimer des caractères spécifiques, ...)   |   50+ types de graphiques (Diagramme de Gantt, ...)   |   40+ formules pratiques (Calculer lâge en fonction de la date de naissance, ...)   |   19 outils d'insertion (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 plus

Boostez vos compétences Excel avec Kutools pour Excel, et découvrez une efficacité sans précédent. Kutools pour Excel propose plus de300 fonctionnalités avancées pour augmenter la 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 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, plutôt que dans de nouvelles fenêtres.
  • Augmente votre productivité de50 %, et réduit des centaines de clics de souris pour vous chaque jour !