Insérer une ligne selon une variable

Bonjour,

J'aimerais créer un code permettant d'insérer a l'emplacement défini par une cellule, dans le fichier que je mets ci-joint, il s'agit de la cellule A21.

pour l'instant la macro est :

Sub ligne()

Range("C12").Select

Selection.EntireRow.Insert

Range("C12").Offset(0, 2).Select

Selection.FillDown

Range("C12").Offset(0, 3).Select

Selection.FillDown

Range("C10").Select

End Sub

Donc sélectionnez la 3eme ligne et recopier les formules d'en haut pour les cases se situant a 2 et 3 colonnes de différences

Le problème c'est quand je rajoute une ligne, forcément tout sera décalé d'une ligne, donc pour rajouter une ligne a la fin de la série des valeurs, il faudra décaler de 1 dans la macro.

Ce que j'essaie de faire c'est de remplacer ce "Range("C12")" par une variable qui prendrait chaque fois la cellule contenant le total de la 1ere colonne. Si j'ai bien compris, il faudrait utiliser une fonction indirecte, mais débutant totalement en VBA et malgré mes recherches sur internet, je ne trouve pas la solution...

Je m'en remets donc a vous

Merci d'avance

https://www.excel-pratique.com/~files/doc/Ajouter_Ligne.xls

Bonsoir,

essaye ce code :

Sub AjouteLigne()
Application.CutCopyMode = False
    With [c65536].End(xlUp)
        .Select
        .EntireRow.Insert
    End With
Range(ActiveCell.Offset(0, 2), ActiveCell.Offset(0, 3)).FillDown
End Sub

bonne soirée

Claude.

Je te remercie pour ta réponse rapide, qui marche tres bien dans mon fichier Excel

J'ai bien compris comment tu as procédé pour résoudre ce problème, par contre je vais devoir réutiliser ce code dans d'autres fichiers Excel, et il y a de fortes chances que cela ne fonctionnera pas toujours (la ligne a insérer ne serait pas en dernière position par exemple). C'est pourquoi a la base j'avais opté pour une formule indirecte, bien que je ne sache pas comment cela se passe sur VBA. C'est pourquoi je désire en savoir plus sur cette formule déjà pour apprendre et pouvoir la réutiliser dans de futur situations mais pour les autres fichiers Excel que je vais devoir modifier.

Je veux pas trop en demander, deja que ta réponse m'a été beaucoup utile, en ces quelques lignes j'y ai deja appris quelques trucs qui me seront très utiles par la suite. Mais si tu arrives a m'indiquer une formule qui prend en compte la cellule A21 ou tout autre variante utilisant des formules indirecte, je t'en serais plus que reconnaissant

re,

Chaque problème à sa solution spécifique,

il n'y a pas de méthode "passe-partout" , faut voir !

envoie un autre exemple

Claude.

Rechercher des sujets similaires à "inserer ligne variable"