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

  • Initiateur de la discussion Initiateur de la discussion Dan66
  • Date de début Date de début
  • Mots-clés Mots-clés
    macro

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 !

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

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+
 
- 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

Discussions similaires

Réponses
9
Affichages
162
Retour