XL 2010 Arrêt de copier à la dernière ligne.

Dan66

XLDnaute Nouveau
Bonjour à tous,

J'ai un classeur avec plusieurs onglets dans lesquels on peut trouver EXACTEMENT les mêmes tableaux mais de différentes longueurs, nombre de lignes.
Dans la dernière colonne, la cellule AB6 contient une formule.
A partir de AB7 jusque la fin du tableau, cela peut être 40, 120, 500 ou 1 200 lignes, j'aurai besoin que lorsque je clique sur un bouton associé à une macro, celle-ci vienne :
- Copier la formule de la cellule AB6,
- Coller cette formule à partir de AB7, mais s'arrête à la dernière ligne de cette colonne AB.
A savoir que chaque tableau s'agrandi (nombre de lignes) toutes les semaines et que l'opération de copier / coller se fait aussi toutes les semaines et sur tous les tableaux.
C'est pour ça que j'avais pensé à une macro reliée à un bouton, on clic une fois sur le bouton et le copier / collé est fait en une seconde.
Par avance un GRAND merci à tous de votre aide,
Cordialement,
Daniel
 

sylvanu

XLDnaute Barbatruc
Supporter XLD
Bonjour Dan,
Un essai en PJ avec :
VB:
Sub CopieFormule()
    Application.ScreenUpdating = False
    DL = Range("A65500").End(xlUp).Row
    Range("AB7:AB10000").ClearContents ' supprime les anciennes formules au cas où le nbre de lignes aurait diminué.
    [AB6].Copy
    Range("AB7:AB" & DL).Select
    Selection.PasteSpecial Paste:=xlPasteFormulas, Operation:=xlNone, _
        SkipBlanks:=False, Transpose:=False
    [A1].Select
End Sub
Il faut adapter la colonne qui possède le maximum de lignes, ici par défaut j'ai pris la colonne A.
 

Pièces jointes

  • CopieFormule.xlsm
    15.3 KB · Affichages: 8

job75

XLDnaute Barbatruc
Bonjour Dan66, sylvanu,

Il est plus simple d'utiliser la méthode AutoFill :
VB:
Sub Copie()
With Range("A1", ActiveSheet.UsedRange)
    If .Rows.Count > 6 Then [AB6].AutoFill [AB6].Resize(.Rows.Count - 5), xlFillValues
End With
End Sub
A+
 

Discussions similaires

Statistiques des forums

Discussions
312 078
Messages
2 085 108
Membres
102 780
dernier inscrit
bouratinou