Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

XL 2010 Aide modif code VBA Insertion lignes

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

safranien

XLDnaute Occasionnel
Bonjour à tous,

je souhaite insérer 10 lignes vierges toutes les 4 lignes, à partir de A2 (la ligne 1 contenant mes titres de colonnes). J'avais trouvé à une époque un code qui insérait une ligne toutes les 5 lignes à partir de A1 ( qui correspondait à ce que je voulais faire à cette époque) mais je n'arrive pas à le modifier pour obtenir le résultat attendu et je n'arrive pas non plus à trouver une réponse dans le forum.
Pourriez vous m'aider svp?

Merci

Sub InsereLign()

Dim Plage As Range

Dim L As Long

Application.ScreenUpdating = False

Set Plage = Rows(6)

For L = 11 To 2250 Step 5

Set Plage = Application.Union(Plage, Rows(L))

Next L

Plage.Insert Shift:=xlDown

Application.ScreenUpdating = True

MsgBox "Insertion terminée !"

End Sub
 
Bjr safranien

comme ça :
Code:
Sub InsereLign()

Dim Plage As Range

Dim L As Long

Application.ScreenUpdating = False

Set Plage = Rows(6)

For L = 10 To 2250 Step 4

Set Plage = Application.Union(Plage, Rows(L))

Next L

Plage.Insert Shift:=xlDown
Plage.Insert Shift:=xlDown
Plage.Insert Shift:=xlDown
Plage.Insert Shift:=xlDown
Plage.Insert Shift:=xlDown
Plage.Insert Shift:=xlDown
Plage.Insert Shift:=xlDown
Plage.Insert Shift:=xlDown
Plage.Insert Shift:=xlDown
Plage.Insert Shift:=xlDown

Application.ScreenUpdating = True

MsgBox "Insertion terminée !"

End Sub

Cordialement, Gérard
 
Bonjour Gérard

merci beaucoup !!! Du coup, si je veux insérer 20 lignes toutes les 5 lignes toujours à partir d'A2, comment dois-je écrire le code?
Comme ça? Désolé je n'y comprends rien au VBA.

Sub InsereLign()

Dim Plage As Range

Dim L As Long

Application.ScreenUpdating = False

Set Plage = Rows(7)

For L = 20 To 2250 Step 5

Set Plage = Application.Union(Plage, Rows(L))

Next L

Plage.Insert Shift:=xlDown
Plage.Insert Shift:=xlDown
Plage.Insert Shift:=xlDown
Plage.Insert Shift:=xlDown
Plage.Insert Shift:=xlDown
Plage.Insert Shift:=xlDown
Plage.Insert Shift:=xlDown
Plage.Insert Shift:=xlDown
Plage.Insert Shift:=xlDown
Plage.Insert Shift:=xlDown
Plage.Insert Shift:=xlDown
Plage.Insert Shift:=xlDown
Plage.Insert Shift:=xlDown
Plage.Insert Shift:=xlDown
Plage.Insert Shift:=xlDown
Plage.Insert Shift:=xlDown
Plage.Insert Shift:=xlDown
Plage.Insert Shift:=xlDown
Plage.Insert Shift:=xlDown
Plage.Insert Shift:=xlDown


Application.ScreenUpdating = True

MsgBox "Insertion terminée !"

End Sub

A priori non ce n'est pas ça, je n'obtiens pas le résultat attendu.
Pour le code d'origine, il fonctionne très bien pour l'insertion de 10 lignes toutes les 4 lignes par contre est-ce normal qu'il soit super long à s'exécuter? J'ai fait l'essai avec seulement 16 lignes de données mais en voulant insérer 70 lignes (en écrivant 70 fois Plage.Insert Shift:=xlDown dans le code) toutes les 4 lignes et ça met 5 bonnes minutes avant que ce ne soit fini.
 
Dernière édition:
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Réponses
4
Affichages
461
Réponses
3
Affichages
452
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…