Copier/coller 1 ligne xfois suivant le contenu d'une cellule

Bonjour,

J’ai un petit souci sur un code en VBA. J'ai cherché sur votre forum, j'ai des piste, mais pas de réponse.

J’aimerai copier une ligne, et à partir d’un nombre sur une cellule, la répliqué autant de fois à partir de la ligne copié.

Par exemple :

La cellule contient le nombre « 5 »

le code va copier la ligne 4, sélectionner de la ligne 4 à 8 (4 + le nombre 5) et coller sur la sélection.

J’ai fait un début de code :

    
Dim i As Integer
    Sheets("Template").Select //sélectionne la feuille
    Range("4:4").EntireRow.Copy //copie la ligne 4
    i = Sheets("Tableau de bord").Range("C31").Value // récupère la valeur de la cellule (sur une autre feuille)
    Range("4:4+i").EntireRow.Select // là c’est moche :)
    Selection.Insert shift:=xlDown, CopyOrigin:=xlFormatFromLeftOrAbove //colle la ligne sur les ligne sélectionné.

Après j'ai aussi un autre code, juste pour sélectionner les cellules que je veux mais je trouve le code plus compliqué

Dim i As Integer
    Sheets("Template").Select
    Range("F4:K4").Copy
    i = Sheets("Tableau de bord").Range("C31").Value 
    Range("F4:K4+i").Select 
    Selection.Insert shift:=xlDown, CopyOrigin:=xlFormatFromLeftOrAbove 

Pouvez vous m’aider sur la sélection de lignes suivant la valeur de la cellule.

Merci de votre aide

Bonjour Zarkoft, bonjour le forum,

Peut-être comme ça :

Sub Macro1()

Dim i As Integer
Sheets("Template").Rows(4).Copy 'copie la ligne 4
i = Sheets("Tableau de bord").Range("C31").Value 'récupère la valeur de la cellule (sur une autre feuille)
Sheets("Template").Rows("4:" & 4 + i).Insert shift:=xlDown, CopyOrigin:=xlFormatFromLeftOrAbove 'colle la ligne sur les ligne sélectionné
End Sub

Évite les Select inutiles qui ne font que ralentir l'exécution du code et sont source de plantage...

Bonjour ThauThème,

Ça marche parfaitement!

J'ai juste modifié le Sheets("Template") par ActiveSheet au moment de coller pour bien aller avec mon code (car là il collait les lignes sur le "template").

Merci pour ton aide et ton conseil (je vais essayer de virer un max de select).

Bonne fin de journée

Rechercher des sujets similaires à "copier coller ligne xfois suivant contenu"