Comment inserer une ligne toutes les 5 lignes

E

Elve

Guest
Bonjour,
J'ai besoin d'inserer une ligne toutes les X lignes(x étant constant).
Je cherche à le faire automatiquement sous VBA
Merci d'avance.
Elve
 
@

@+Thierry

Guest
Bonjour Eve, le Forum

La difficulté réside dans le fait que le rajout de ligne change la plage en cours de boucle... Par exemple :

Sub TestNonConcluant()
Y = 2
For X = 1 To ActiveSheet.UsedRange.CountRange
Range(" A" & X).EntireRow.Insert
Next X
End Sub

Ne couvrira pas toute la plage... En effet celle ci va changer en cours de boucle...


Par conséquent il faudrait partir du bas... et remonter vers le haut, Sub InsertLigneParLeBas()
Dim NbLigne As Byte
Dim X As Integer
NbLigne = InputBox("Taper un nombre de ligne entre insertion ligne")

For X = ActiveSheet.Range("A65536").End(xlUp).Row + 1 To 2 Step -NbLigne
Range("A" & X).EntireRow.Insert
Next X
End Sub

Mais le résultat peut être génant en haut du tableau....

Donc finalement on repart du Haut mais on calcul combien on va insérer de lignes pour paramétrer la boucle :

Sub InsertLigneCalcul()
Dim i As Byte, X As Integer, Y As Integer, Z As Integer, W As Integer

i = InputBox("Taper un nombre pour l'insertion ligne")
Y = ActiveSheet.Range("A65536").End(xlUp).Row
X = (Y / i) * 2
Z = X + Y

For W = i To Z Step i
Range(" A" & W).EntireRow.Insert
Next W

End Sub


Là je pense que toutes la plage sera couverte par une insertion de ligne, à partir du moment of course où ton tableau ait bien des données en colonne "A".

Bon appétit
@+Thierry
 
S

SYL'S

Guest
Salut Elve et le forum

un ancien lien vers le même type de sujet
<http://www.excel-downloads.com/html/French/forum/read.php?f=1&i=38998&t=38954>

Solution proposée par MOA :

Sub MacroInsertUneLigneSurCinq()
Dim Line As Integer
Range("A2").Select
Line = 0
Recommence:
Line = Line + 5
Rows(Line).Select
Selection.Insert Shift:=xlDown
If Line < ActiveSheet.UsedRange.Rows.Count Then
GoTo Recommence
End If
End Sub

A plus. Syl's
 
M

Marlene

Guest
j'ai un probleme avec l'insertion de ligne dans excel... il se bloque en disant qu'il est impossible d'insere une ligne en dehors de la page

j'ai essayer par tous le smoyens mais rien n'y fait

svp repondez moi c'est tres tres urgent

Marlene
 
@

@+Thierry

Guest
Tiens Bonjour Marlène, le Fil

C'est par hasard que je tombe sur ce fil !

Si c'est si Urgent ptet que c'est déjà solutionné... Sinon post ton code, car il est évident qu'il ne faut pas dépasser 65536 Lignes car sinon les lignes vont sortir de l'écran pour venir s'écrire sur ton clavier !! (lol)

Bon donc tu sais ce qui te reste à faire Marlène

Bon Dimanche
@+Thierry
 

Discussions similaires