Etendre les formule d'une plage de données sélectionnée

Bonjour à tous,

Une macro m'amène, en bout de chaine, à une plage de donnée en sélection. Je souhaite étendre les formules de cette plage de données sélectionnée jusqu'à la dernière donnée la plus bas de la 1ere colonne la plus à gauche de cette plage.

(exemple en pièce jointe)

J’ai des données sans formules sur la plage de valeurs : A1 :D5

J’ai des formules de E1 à G1 (E1 :G1)

Je souhaite, avec une macro, étendre les formules de E1 jusqu’à G5.

Je veux que la formule soit « universelle » car, si aujourd’hui les formules à étendre sont en E1 :G1 et la dernière ligne de données sans formule est A5 :D5, demain, les dernières formules à étendre seront en E5 :G5, mais j’ignore jusqu’à quelle ligne iront les données sans formule que je vais ajouter à partir colonnes A6 à D6.

Voici ce que j'ai essayé:

Sub Macro1()
'

Range("E1:G1").select
Selection.AutoFill Destination:=Range("E1:G5")

End Sub

à partir de là j'ai vu que ceci était possible:

Sub Macro2()

Range("E1:G1").select
nbdeLigne = Range("A" & Rows.Count).End(xlUp).Row
Selection.AutoFill Destination:=Range("E1:G"& nbdeLigne)

end sub

Ca fonctionne très bien, mais si demain, j'ajoute des valeurs de A6 à D11, comment faire en sorte que

la macro sache qu'à cet endroit:

Selection.AutoFill Destination:=Range("E1:G"& nbdeLigne)  

E1 est variable?

car j'ai essayé ça, mais ça ne fonctionne pas:

Sub Macro3()

Range("E1:G1").select
nbdeLigne = Range("A" & Rows.Count).End(xlUp).Row
nbdeLignebis = Range("E" & Rows.Count).End(xlUp).Row
Selection.AutoFill Destination:=Range("E& nbdeLignebis:G"& nbdeLigne)

end sub

merci d'avance pour votre aide!

Bonjour,

Si les formules restent identiques dans les colonnes E, F et G, la macro ci-dessous fonctionnera même après ajout de lignes de données sans formule.

Sub Macro1()
Dim DerLig As Long
    DerLig = Range("A" & Rows.Count).End(xlUp).Row
    Range("E1:G1").AutoFill Destination:=Range("E1:G" & DerLig), Type:=xlFillDefault
End Sub

A+

Bonjour,

merci pour ton aide,

mais il manque un élément:

là où cette fois ci, effectivement la formule commence en E1, demain, elle sera toujours en E, mais démarrera en E6 ou plus loin.

Avec DerLig, tu comptes jusqu'où doit aller l'étirement de formule. Je souhaite ajouter un Derligformule (par exemple) qui compte, jusqu'où la formule est étendue à présent. Et commence à étendre à nouveau la formule depuis cette ligne.

=> en fait après avoir étendu les formules, il y a un copier coller en valeur jusqu'à l'avant dernière ligne histoire d'alléger le fichier...

exemple en PJ

J'ai réussi à faire ce que je souhaitais.

Voici:

Sub Macro3()

 nbdeLigne = Range("A" & Rows.Count).End(xlUp).Row
 nbdeLignebis = Range("E" & Rows.Count).End(xlUp).Row
 Selection.AutoFill Destination:=Range(Range("E" & nbdeLignebis), Range("G" & nbdeLigne))

 End Sub

bonne journée

et Merci

Rechercher des sujets similaires à "etendre formule plage donnees selectionnee"