Recopie lignes avec pas de 5

Katoch

XLDnaute Junior
Bonjour à tous !

Je dois recopier les cellules "A1:D1" en "A2:D2" puis "A6:D6" en "A7:D7" etc....juqu'à ce qu'il n'y ait plus de ligne à copier (plusieurs centaines).
Pourriez vous m'indiquer le code de la macro svp ?

Grand merci d'avance.
 

Pierrot93

XLDnaute Barbatruc
Re : Recopie lignes avec pas de 5

Bonjour,

essaye ceci, sans plus de détails... :
Code:
Option Explicit
Sub test()
Dim i As Long
For i = 1 To Range("A65536").End(xlUp).Row Step 5
    Cells(i, 1).Resize(, 4).Copy Cells(i + 1, 1).Resize(, 4)
Next i
End Sub

bon après midi
@+
 

Katoch

XLDnaute Junior
Re : Recopie lignes avec pas de 5

Nickel ! , ça fonctionne du premier coup !!

Et pour finir , si vous en avez le temps et si ce n'est pas trop abuser ...:

Maintenant que la copie est effectuée , je souhaiterais supprimer 3 lignes vierges entre ligne 2 et ligne 6 , puis entre ligne 7 et 11, etc ...jusqu'en bas du tableau.

Pouvez vous m'écrire ce code, ainsi que celui pour remettre des lignes vierges , par la suite ?

Merci.
 

Pierrot93

XLDnaute Barbatruc
Re : Recopie lignes avec pas de 5

Ez,

avec suppression des 3 lignes :
Code:
Option Explicit
Sub test()
Dim i As Long
For i = Range("A65536").End(xlUp).Row To 1 Step -5
    Cells(i, 1).Resize(, 4).Copy Cells(i + 1, 1).Resize(, 4)
    If i > 5 Then Cells(i - 3, 1).Resize(3).EntireRow.Delete
Next i
End Sub
 

Pierrot93

XLDnaute Barbatruc
Re : Recopie lignes avec pas de 5

Re,

pour les remetre...
Code:
Sub test3()
Dim i As Long
For i = Range("A65536").End(xlUp).Row To 1 Step -2
If i > 3 Then Rows(i - 1).Resize(3).Insert
Next i
End Sub

bien qu'il soit plus facile de les masquer pour les réafficher plus tard....
 

Discussions similaires

Réponses
1
Affichages
610

Statistiques des forums

Discussions
312 345
Messages
2 087 490
Membres
103 558
dernier inscrit
Lamine ABIDI