Optimisation de macro - Dupplication de lignes

Bonjour,

Je souhaite duppliquer environ 3000 lignes, chaque ligne devant apparaître 37 fois d'affilée sur mon nouveau fichier.

J'ai réussi à écrire un code correspondant, mais l'ordinateur est tellement lent (50 lignes duppliquées en une trentaine de minutes...) que je me dis qu'il doit y avoir une autre méthode moins lourde.

Voici mon code :

Sub proc()
Dim Plage As Range

Dim L As Long
    L = 9
    While Cells(L, 1) <> ""

        'Duppliquer les lignes sur une autre feuille'
        For i = 1 To 37
            Set Plage = Worksheets("Fichier maître").Rows(L)
            Plage.Select
            Selection.Copy
            Set Plage = Worksheets("Feuil1").Rows(L + (L - 9) * 36)
            Plage.Insert Shift:=xlDown

        Next
    L = L + 1
    Wend
End Sub

Je vous remercie par avance de vos réponses

Sub proc()
application.screenupdating=true

Dim L As Long
    L = 9
    While Cells(L, 1) <> ""

        'Duppliquer les lignes sur une autre feuille'
       For i = 1 To 37
            Worksheets("Fichier maître").Rows(L).Copy destination:=Worksheets("Feuil1").Rows((L-9)*37+i)     
        Next
    L = L + 1
    Wend
application.screenupdating=false
End Sub

Merci c'est déjà beaucoup plus rapide !

Le soucis c'est qu'Excel s'est arrêté en plein milieu, me disant qu'il y a trop de données...

Comment puis-je éviter cela ?

Je ne vois pas pourquoi excel s'arrêterait, à quel L et quel i s'arrête excel ?


Je ne vois pas pourquoi excel s'arrêterait, à quel L et quel i s'arrête excel ?

J'ai 12 991 lignes sur mon nouveau fichier :

Excel s'est donc arrêté à L = 351 et i = 4.

Je ne comprends pas pourquoi il s'arrête.. Essaie de bosser sur un xlsx ou un xlsm... ou achête de la ram

Je bosse sur un .xlsm

Je ne comprends pas non plus.

Si je reprends pas procédure en commençant au L où Excel s'est arrêté, il me renvoit directement le même message d'erreur ("Excel ne peut pas terminer cette tâche avec les ressources disponibles. Sélectionnez moins de données ou fermez des applications.")

Cette ligne doit avoir qqchose de spécial. supprime la

J'ai relancé plusieurs fois Excel et au final il m'a fait mes dupplications !

Voilà merci pour ton aide

Rechercher des sujets similaires à "optimisation macro dupplication lignes"