VBA: Select range last row to nth row

Bonjour à toutes et à tous,

Je souhaite copier la valeur de la cellule A1 et la coller dans une autre feuille 8 fois, y fois d'affilée avec un offset de 1.

C'est-à-dire:

A1.value
A1.value
...
VIDE
A1.value
A1.value
...
VIDE

etc...

Pour l'instant, j'ai:

Dim i As Long
Dim LR1 As Long
LR1 = (Sheets("TCD").Cells(Sheets("TCD").Rows.Count, "A").End(xlUp).Row - 2) * 8

For i = 3 To LR1
    Sheets("TCD").Cells(i, 1).Copy
    Sheets("CDRC").Range("A65000").End(xlUp).Offset(2, 0).PasteSpecial

Next

Mais évidemment, cela ne colle qu'une seule fois. Comment puis-je sélectionner une range depuis la dernière ligne? J'ai essayé ça, sans succès:

Sheets("CDRC").Range(Range("A65000").End(xlUp), Range("A65000").End(xlUp) + 8)

Merci de vos retours

Matt

Bonjour,

Un test avec la propriété resize de l'objet range :

Sub COPIE()
Dim i As Long
Dim LR1 As Long
With Worksheets("TCD")
LR1 = (.Cells(.Rows.Count, 1).End(xlUp).Row - 2) * 8
    For i = 3 To LR1
        .Cells(i, 1).Copy Worksheets("CDRC").Range("A65000").End(xlUp).Resize(8).Offset(2, 0)
    Next i
End With
End Sub

Cdlt,

Merci pour ton retour!

J'ai trouvé une solution de mon côté :

Dim i As Long
Dim j As Long
Dim LR1 As Long
LR1 = (Sheets("TCD").Cells(Sheets("TCD").Rows.Count, "A").End(xlUp).Row - 2)

For i = 3 To LR1
    j = Sheets("CDRC").Cells(Sheets("CDRC").Rows.Count, "A").End(xlUp).Row
    Sheets("TCD").Cells(i, 1).Copy
    Sheets("CDRC").Range(Cells(j, 1), Cells(j + 7, 1)).Offset(2, 0).PasteSpecial
Rechercher des sujets similaires à "vba select range last row nth"