Copier une formule sur la dernière ligne d'un tableau

Bonjour à tous,

Je souhaiterais insérer une formule sur la ligne suivant la dernière ligne d'un tableau.

Pour que cette formule fonctionne, il faut qu'elle dépende du numéro de ligne.

J'ai déclarer une variable Ligne dans le code mais je ne parviens pas à intégrer cette variable dans la formule...

image
Sub ajouter_formule_ligne()
    'Ajouter la formule =B2&"_"&NB.SI($B$2:B2;B2) sur la dernière ligne + 1 du tableau
    'La valeur "2" de la formule devant être remplacée par la variable ligne

    Workbooks("Devis_Clients.xlsm").Sheets("Détail_Devis").Activate
    ligne = Sheets("Détail_Devis").Range("B2").End(xlDown).Row + 1
    ligne_origine = Item.Row

    Range("A" & ligne).Select
    ActiveCell.FormulaR1C1 = "="A" & ligne &"_"&NB.SI("B"&"ligne":("B" & ligne);("B" & ligne))"

End Sub

J'imagine que la syntaxe n'est pas du tout bonne, j'ai essayé plusieurs variantes, sans succès...

Quelqu'un pourrait-il m'aider?

Par avance merci

Bonjour,

dans ta formule en A20, tu fais référence à B20 qui n'est pas définie ! ou tout au moins on ne voit pas ce qu'il y a mais on devine

mets un fichier représentatif et à mon sens structure tes données en tableau

=[@devis]&"_"&NB.SI(B2:B$2;[@devis])
16devis.xlsx (9.44 Ko)

Par code VBA, vous pouvez essayer ceci

Sub ajouter_formule_ligne()

With Workbooks("Devis_Clients.xlsm").Sheets("Détail_Devis")
    ligne = .Range("B" & .Rows.Count).End(xlUp).Row + 1
    .Range("A" & ligne).FormulaR1C1 = "=RC[1]&""_""&COUNTIF(R2C2:RC[1],RC[1])"
End With
End Sub

Cordialement

Tu renommes la cellule B1 "Sommet" par exemple, puis tu appliques la formule suivante dans la cellule A1 et tu étends.

=B1 & "_" & NB.SI(B1:Sommet;B1)

Merci beaucoup pour toutes vos réponses qui fonctionnent parfaitement!!

Ce forum est vraiment très utile grâce à la qualité des conseils de ses membres

N'oublie pas de clore le fil de discussion en cliquant sur

Rechercher des sujets similaires à "copier formule derniere ligne tableau"