Bonjour à tous,
Je travaille sur un fichier Excel (en pièce jointe).
En fonction de la valeur se trouvant dans chaque cellule de la colonne A ( 2, 3,...), je souhaite dupliquer la ligne correspondante une fois, deux fois,...
Voici le code que j'ai écrit (donc loin d'être parfait):
Dim Plage As Range, Test As Long
Dim DerniereLigne As Long, Ligne As Long, n As Long
'Application.ScreenUpdating = False
DerniereLigne = Cells(65536, 1).End(xlUp).Row
Set Plage = Range(Cells(1, 1), Cells(DerniereLigne, 1))
For Each Occurence In Plage
If Occurence > 1 Then
n = Occurence - 1
Cells(Occurence.Row + 1, 1).Resize(n, 1).EntireRow.Insert Shift:=xlDow
End If
Next Occurence
End Sub
Ce que j'arrive à faire:
- En fonction du nombre en A, je peux créer une ou ou plusieurs nouvelles lignes
Ce que je n'arrive pas à faire:
- Copier les informations de la ligne précédente dans la ou les lignes nouvellement créées.
Enfin, en faisant un test sur un grand nombre de lignes, je me suis rendu compte que l'exécution de mon code était très long, n'y a-t-il pas moyen de l'accélérer?
En vous remerciant par avance pour votre aide
Bien cordialement
Singertwit