Copie formules dans la même feuille à des lignes éloignée en VBA

Bonjour,

Je souhaiterais en fonction de la valeur d'une cellule ("G6"), les formules des cellules ( colonne C, D, E, F, Ligne de 12 à 58) se copie dans les mêmes colonne mais à +200 de lignes.

Voici le code que j'ai créé, mis excel me dis qu'il y a une erreur:

Sub CopieFact()
Dim L As Integer
Dim C As Integer

If Sheets("Facturation").Range("G6") = 1 Then
    With Sheets("Facturation")
        For L = 12 To 53
            For C = 3 To 7
                .Range(C, L).Formula = .Range(C, L + 200)
            Next C
        Next L
    End With
End If
End Sub

Je ne comprend pas d'où peut venir l'erreur.

Merci de votre retour,

RQ

Bonjour,

Pour copier la formule, il faut bien l'indiquer. Sinon vous copiez la valeur des cellules. De plus il faut lire "la cellule [à gauche du égale] prend la valeur de la cellule [à droite du égal]". Soit

.Cells(C, L).Formula = .Cells(C, L + 200)

devient

.Cells(C, L + 200).Formula = .Cells(C, L).Formula

EDIT: @Joco a raison, c'est Cells qu'il faut utiliser

Bonjour

A tester

Sub CopieFact()
    Dim L As Integer
    Dim C As Integer

    If Sheets("Facturation").Range("G6").Value = 1 Then
        With Sheets("Facturation")
            For L = 12 To 53
                For C = 3 To 7
                    ' Utilisation de Cells pour référencer correctement les cellules
                    .Cells(L, C).Formula = .Cells(L + 200, C).Formula
                Next C
            Next L
        End With
    End If
End Sub

Merci Joco7915, cela fonctionne !!!

Rechercher des sujets similaires à "copie formules meme feuille lignes eloignee vba"