Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

VBA étendre les formules (positions de départ et de fin changeantes chaque jour)

  • Initiateur de la discussion Initiateur de la discussion merguez59
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

M

merguez59

Guest
Bonjour,

J’ai des données sans formules sur la plage de valeurs : A1 😀5
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 😀5, 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 en pièce jointe un exemple.

Merci d’avance pour votre aide,

Cordialement
 

Pièces jointes

Re : VBA étendre les formules (positions de départ et de fin changeantes chaque jour)

Bonjour, Merguez 59.

Et sans macro, cela vous conviendrait ?
Cliquez en A1
Cliquez sur "Mettre sous forme de tableau, choisissez la couleur et valides.
Editez et validez EE,F2 et G2.
Chaque nouvelle ligne (à condition de ne pas laisser de ligne vide) contiendra les formules définies.
 
Re : VBA étendre les formules (positions de départ et de fin changeantes chaque jour)

Bonjour Victor,

merci pour ton aide. Je ne connaissais pas cette méthode: intéressante et je l'utiliserai dans d'autres occasions!

Néanmoins, dans le cadre de ce que je suis en train de faire actuellement, les actions pour lesquelles je demande votre aide font partie d'une macro plus longue qui arrive à ce moment là à une plage de donnée qu'il faut étendre.

Le fichier en PJ n'est qu'une simplification d'un fichier plus lourd.

Je souhaite que ce soit fait en macro

merci d'avance,
 
Re : VBA étendre les formules (positions de départ et de fin changeantes chaque jour)

Re,

Dans ce cas, adapter le code suivant de job75 🙂
 
Re : VBA étendre les formules (positions de départ et de fin changeantes chaque jour)

Bonjour
Je ne comprends pas bien:

qu'est ce que [B1]

pourquoi écrire une formule? je veux juste étendre celles existantes

merci d'avance,
 
Re : VBA étendre les formules (positions de départ et de fin changeantes chaque jour)

Bonjour

J'ai essayé, ça ne fonctionne pas

Voici ce que j'ai écrit:

Code:
Sub RRREEECCC()
With [B1].Resize(Range("A65000").End(xlUp).Row)
.FormulaR1C1 "=RC[-3]+5"
'.Value = .Value 'facultatif, supprime les formules
End With
End Sub


en pj le fichier

Merci d'avance,
 

Pièces jointes

Re : VBA étendre les formules (positions de départ et de fin changeantes chaque jour)

Voici ce que j'ai essayé


Code:
Sub Macro1()
'

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



End Sub

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

Code:
Sub Macro2()

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

end sub
'ça 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:

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

E1 est variable?


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


Code:
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!
 
Re : VBA étendre les formules (positions de départ et de fin changeantes chaque jour)

Re,

Vous avez mal recopié (manquait un "="), et mal adapté (vous essayez de recopier B1).
Regardez la pj. Exemple pour les colonnes E et F, et à adapter pour G.
 

Pièces jointes

Re : VBA étendre les formules (positions de départ et de fin changeantes chaque jour)

Bonjour Victor,

merci de ton aide.
ça fonctionne bien et même quand j'ajoute des données après A5😀5, ça fonctionne.

Par contre en lisant la formule, celle-ci relance le fait d'étendre les formules depuis E1 et F1.

Est-il possible de faire en sorte qu'elle fasse l'étirement de formule depuis la ligne la plus basse de E, F et G?


=> j'ajoute des données entre A6😀11, la formule commencerait à E5 et F5.
=>le lendemain, j'ajoute des données entre A12😀15, la formule commencerait à E11 F11

etc, etc.... En fait chaque jour, l'ensemble du tableau est copier collé en valeur une fois les calculs effectués.

merci d'avance,
 
Re : VBA étendre les formules (positions de départ et de fin changeantes chaque jour)

Bonjour

Je pense être parvenu à résoudre mon problème: étendre mes formules à partir de ma sélection. Voilà ce que ça donne (à lancer quand la plage de donnée est sélectionnée):

Code:
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

merci!

Bonne journée
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD
Assurez vous de marquer un message comme solution pour une meilleure transparence.

Discussions similaires

T
Réponses
5
Affichages
1 K
Thomexcel
T
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…