Insérer 2 lignes dans toutes les lignes déjà existantes

Bonjour à tous,

débutant en VBA, j'essaie de me creuser la tête mais j'avoue ne pas comprendre

j'ai un fichier excel avec une suite de lignes pouvant aller jusqu'a 1000 lignes

j'aimerais dans cette suite de lignes insérer 2 lignes entre chaque ligne déjà présente

En haut le résultat que je souhaite obtenir et en bas les lignes dans lesquels il faut insérer 2 lignes entre chaque lignes

j'ai fait une macro ça donne cela :

Sub Macro4()
'
' Macro4 Macro
'

'
    Rows("2:3").Select
    Selection.Insert Shift:=xlDown, CopyOrigin:=xlFormatFromLeftOrAbove
    Rows("5:6").Select
    Selection.Insert Shift:=xlDown, CopyOrigin:=xlFormatFromLeftOrAbove
    Rows("8:9").Select
    Selection.Insert Shift:=xlDown, CopyOrigin:=xlFormatFromLeftOrAbove
    Rows("11:12").Select
    Selection.Insert Shift:=xlDown, CopyOrigin:=xlFormatFromLeftOrAbove
    Rows("14:15").Select
    Selection.Insert Shift:=xlDown, CopyOrigin:=xlFormatFromLeftOrAbove
    Rows("17:18").Select
    Selection.Insert Shift:=xlDown, CopyOrigin:=xlFormatFromLeftOrAbove
    ActiveWindow.SmallScroll Down:=9
    Rows("20:21").Select
End Sub

Sauf que j'aimerais eviter d'enregistrer ma macro avec les 1000 lignes en entiers ou bien saisir la macro en entiers

quelqu'un pourrait me donner une aide svp ? une fonction repeter jusqu'a la ligne 1000 ?

Merci par avance

Bonjour,

Une piste :

Sub Inserer()

    Dim Plage As Range
    Dim I As Long

    'défini la plage sur la colonne A de la feuille active à partir de A1
    With ActiveSheet: Set Plage = .Range(.Cells(1, 1), .Cells(.Rows.Count, 1).End(xlUp)): End With

     For I = Plage.Count To 2 Step -1

        Plage(I).EntireRow.Insert xlShiftDown
        Plage(I).EntireRow.Insert xlShiftDown

    Next I

End Sub

ça fonctionne

Mille mercis THEZE !!!!

Re,

Heureux de t'avoir aidé !

Rechercher des sujets similaires à "inserer lignes toutes deja existantes"