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

recopier une formule vers le bas sur une col de longueur variable

  • Initiateur de la discussion Initiateur de la discussion OldZebra
  • 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 !

O

OldZebra

Guest
Bonjour,

Je sollicite votre aide, Je ne trouve pas de réponse claire à ce pb:
J'ai un fichier de tres gde longueur (souvent plus de 40000 lignes)
je souhaite en VBA apliquer une formule dans la 1ere case d'une colonne
(ex: en C additionner A et B) comme dans le fichier joint.

La solution que j'ai trouvée fonctionne,

en VBA, je teste la présence d'une valeur dans la colonne d'a coté, pour vérifier si je suis en bas du fichier.

mais avec 2 inconvénients.
Sur un fichier de tres gde longueur, c'est trèèèèèèèèèèèès lonnnnnnnnnnnng !
(les formules sont beaucoup plus complexes que dans l'exemple !)

Si la colonne de réference contient une case vide, la macro s'arrète accidentellement.

Quelqu'un a-t-il une solution ou idée qui pourrait ètre plus rapide (avec Xldown, je recopie jusqu'à la fin de la feuille,donc au dela de la fin du fichier et cela ne me convient pas.

Merci pour votre aide
 

Pièces jointes

Re : recopier une formule vers le bas sur une col de longueur variable

Bonsoir OldZebra,

Avec ton exemple:

Code:
Sub Testformula()
    Dim derLigne As Long
    Dim plage As Range
    With Sheets("Feuil1")
        derLigne = .Range("A" & .Rows.Count).End(xlUp).Row
        Set plage = .Range("C1:C" & derLigne)
        plage.FormulaR1C1 = "=RC[-2]+RC[-1]"
    End With
End Sub

P.S. avec ta macro c'eût était mieux.
A+
 
Re : recopier une formule vers le bas sur une col de longueur variable

Bonsoir,

Re, décidément, Hasco, pas la forme, moi, aujourd'hui.....

Edit : Hasco, son code est dans Feuil1....

Tant pis, je mets mon code...

Code:
Sub recopie()
Dim DerLig As Long
DerLig = Range("A:B").Find("*", , , , xlByRows, xlPrevious).Row
Range("C1:C" & DerLig).FormulaR1C1 = "=RC[-2]+RC[-1]"
End Sub
 
Re : recopier une formule vers le bas sur une col de longueur variable

Re,

@Bh²😀, je me suis posé la même question mais comme oldzebra nous disait:
en VBA, je teste la présence d'une valeur dans la colonne d'a coté, pour vérifier si je suis en bas du fichier.

J'ai choisi de faire le test sur une colonne.

@Staple😀, parceque lorsque qu'une solution est pour moi, je vais comme vous au plus synthétique. Mais pour les demandeurs, je préfère segmenter.

Mais dans vba comme dans le cochon tout est bon!

A++ vous deux😉
 
Re : recopier une formule vers le bas sur une col de longueur variable

Salut vieux zebre
Bonsoir le fil
bonsoir le Forum

On pourrait aussi utiliser cette méthode
Code:
Sub test()
Dim DerLigne As Long
With Worksheets("Feuil1")
DerLigne = .Range("A65536").End(xlUp).Row
           .Range("C1") = "=Sum(A1:B1)"
           .Range("C1").[COLOR=Red]AutoFill [/COLOR].Range("C1:C" & DerLigne), xlFillDefault
End with
End Sub
Bonne fin de Soirée
 
Dernière édition:
Re : recopier une formule vers le bas sur une col de longueur variable

Hasco,BhBh, Staple1600, et Cti160, merci à vous 4

toutes vos solutions fonctionnent, ! je me sent humble, et il va me faloir 2 ou 3 jours pour en digèrer le code,
je suis séduit par l'élégance de vos solutions
qui ne montent pas "des usines à gaz"



Je vais tester et essayer de comprendre tout celà, en fait "usedRange" me donne des idées pour autre chose...
merci encore à tous.

OldZebra
 
Re : recopier une formule vers le bas sur une col de longueur variable

Désolé,

je me suis trompé de fil pour poster mon message, et je ne sais l'effacer 😕
 
Dernière édition:
- 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

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