Insérer automatiquement des formules en créant une ligne

Quelqu'un saurait-il m'aider à résoudre le problème suivant :

je cherche un moyen d'insérer une ou plusieurs lignes nouvelles dans une feuille, en y insérant automatiquement les mêmes formules que celles de la ligne supérieure, sans avoir à insérer puis copier/coller les formules de la ligne "source" ?

Merci !

Bonjour,

Fait nous voir ta feuille ( quelques lignes suffisent)

Avec annotation de ce que tu veux

Claude.

Bonjour,

en principe lorsque tu insères ou ajoutes une nouvelle ligne et que tu complèteras les colonne 9 et 10 (qui font partie de ta formule),, la formule se placera automatiquement en colonne 7.

Pas besoin de recopier donc tes formules.

Vérifie toutefois que dans OUTILS / OPTIONS, la case "Etendre les formules..." est bien cochée dans l'onglet "Modifications"

Amicalement

Dan

re,

Sub Formules()
Dim Lg As Integer
Lg = Range("A65536").End(xlUp).Row
    Range("E5:G5").AutoFill Destination:=Range("E5:G" & Lg)
End Sub

Claude

édit: Salut Dan, connaissais pas cette solution, c'est nouveau ?

édit2: Chez moi non plus, çà marche pas, seul le MFC est reconduit.

Nad-Dan a écrit :

Bonjour,

en principe lorsque tu insères ou ajoutes une nouvelle ligne et que tu complèteras les colonne 9 et 10 (qui font partie de ta formule),, la formule se placera automatiquement en colonne 7.

Pas besoin de recopier donc tes formules.

Vérifie toutefois que dans OUTILS / OPTIONS, la case "Etendre les formules..." est bien cochée dans l'onglet "Modifications"

Amicalement

Dan

Merci pour ta réponse...mais ça marche pas chez moi.

La case Etendre les formules est bien cochée mais quand j'insère une nouvelle ligne, les formules ne se placent pas automatiquement...

Mystère.

dubois a écrit :

re,

Sub Formules()
Dim Lg As Integer
Lg = Range("A65536").End(xlUp).Row
    Range("E5:G5").AutoFill Destination:=Range("E5:G" & Lg)
End Sub

Claude

édit: Salut Dan, connaissais pas cette solution, c'est nouveau ?

Merci pour ta réponse, mais je ne sais pas trop quoi en faire...

J'ai collé le code dans une macro, mais je ne vois pas d'effet visible.

Est-ce qu'il faut choisir une cellule active en particulier ?

re,

Tu dois avoir déjà une macro pour enregistrer ta nouvelle ligne, ajoute ce code à la fin

réponds aux message avec "répondre" plutôt que "Citer"

Claude.

Effectivement ça marche !!! ...sauf quand j'insère une nouvelle ligne en bas de tableau ?!

Désolé pour avoir répondu avec "Citer", c'était pour pouvoir répondre séparément à chacune des 2 réponses que j'avais reçues.

Merci.

re,

Fais-nous voir la macro qui ajoute ou insère ligne

Claude.

Re,

La solution fonctionne très bien à partir (assez curieusement d'ailleurs... ) de la ligne 5.

Amicalement

Dan

Edit Dan : j'ai souvenance que ce sujet a été traité ici il y a deux ou trois ans.

La formule se recopie automatiquement après la ligne 5. Pour que cela fonctionne, une fois ton fichier ouvert, utilise la poignée de recopie depuis la ligne 1 jusque la ligne 4 puis entre tes nouvelles données en ligne 5 et ainsi de suite.

La voilà :

Sub xxtest()

'

' xxtest Macro

' Macro enregistrée le 01/09/2009 par

'

'

Selection.Insert Shift:=xlDown

Dim Lg As Integer

Lg = Range("A65536").End(xlUp).Row

Range("E5:G5").AutoFill Destination:=Range("E5:G" & Lg)

End Sub

re,

Si tu veux de l'aide, va falloir participer un peu +,

c'est pas une macro de saisie çà ! !

Désolé, mais je ne comprends même pas le reproche : c'est quoi une macro de saisie par rapport à une macro...?

Gloup,

Claude ne te reproche rien mais là, il ne comprend pas ce que tu veux faire.

explique ce que tu fais exactement ou alors mieux, fais ta macro avec l'enregistreur automatique d'excel puis poste là ici dans ta réponse.

Dan

En fait, je souhaite juste:

– insérer une ligne à n'importe quel endroit de la feuille

– comme par magie, retrouver les mêmes formules que dans les cellules des lignes déjà renseignées

Ça pourrait être une macro qui insère une ligne en y copiant les formules d'une ligne-type du fichier...?

re,

La ligne 1 est la ligne modèle (formats et formules), cette ligne est masquée.

Tu te positionne n'importe où, clique le bouton et la ligne est insérée.

Sub InsertLigne()
''Macros par Claude Dubois pour "gloub" Excel-Pratique le 01 sept 09
Dim Lg As Integer
    Lg = ActiveCell.Row
    Rows(1).Copy
        With Rows(Lg)
         .Rows.Insert
         .Offset(-1, 0).Hidden = False
        End With
    Application.CutCopyMode = False
End Sub

Fichier:

https://www.excel-pratique.com/~files/doc2/WcS8Hformule.xls

Amicalement

Claude.

C'est génial !!!!

Ça marche impec.

Merci beaucoup et respect au Maître Excel !

(je ne sais pas comment on déclare un topic "résolu")

en bas à gauche, en étant connecté

oJ6LVresolu

Super !

Merci pour tout.

Rechercher des sujets similaires à "inserer automatiquement formules creant ligne"