Conserver formule après insertion

Bonjour à tous,

ya truc qui me turlupine. Je sais pas si ce que je vais vous demander est facile ou pas, et surtout si c'est faisable.

Je fais un calcul tout simple de soustraction. Genre E4=C4-D4. et j'étends ce calcul de E4 à E20 par exemple. Donc on aura à E10 -> E10=C10-D10.

Après ça, j'insert une ligne. Par exemple entre 9 et 10. Le soucis, c'est que je n'ai plus la formule que je voulais obtenir de ligne 4 à la ligne 20 dans la colonne E.

Comme puis-je faire pour que la formule s'applique automatiquement ?

Merci.

Euh, je ne comprend pas, il te suffit après l'insertion de tirer à nouveau la cellule du dessus !

oui bien sûr.

Mais je cherche un moyen de le faire automatiquement à l'insertion de la ligne.

J'explique la situation :

dans la boite ou je suis, je travaille avec des papys (50 ans). Le trucs c'est qu'il faudrait améliorer le fichier sans que ce soit trop compliquer. sinon ils galèrent. Si on met en place un système où ils doivent écrire des formules ou tirer, ils vont lutter.

Leur compétence s'arrête au copier-coller.

Donc si la formule est automatique. C'est parfait pour eux.

Merci.

Bonjour

Insére une ligne sous la cellule active en recopiant les formules

Code dans un bouton.

Private Sub CommandButton1_Click()
  Application.ScreenUpdating = False
  ActiveCell(2).Resize(1).EntireRow.Insert
  ActiveCell(1).EntireRow.Copy ActiveCell(2).Resize(1).EntireRow
  On Error Resume Next 'au cas où il n'y ait pas de constantes
  ActiveCell(2).Resize(1).EntireRow. _
        SpecialCells(xlConstants).ClearContents       
End Sub

Cordialement,

Amadéus

Impécapable.

T'as trop géré.

Bye.

Je vois pas trop l'interet d'une macro VBA ici, car je trouve le temps gagner est minime voir nul, en etirant tu a le meme resultat.

Pour que çà soit rentable je pense tu devrais y joindre un useform qui te fais preremplir les cases qui interviennent dans ton resultat ou est la formule.

Bonsoir Excelnovice

Mais, avant d' "étirer", comme tu dis, il faut déjà avoir inséré la ligne!

Cordialement,

Amadéus

Re bonsoir

Amadeus c'est vrai qu'il faut etirer avant d'insérer la formule.

Mais je trouve quand même que faire une macro vba pour faire une insertion et une copie de formule , c'est quand meme se compliquer la vie. Tu devra stocker un bouton sur ta feuille .

En ayant créer tes propres barres d'outils et en utilsant CRTL+C puis CTRL+V, je pense que çà va aussi vite, voir meme etirer.C'est clair que si tu dois aller dans les menu deroulant pour selectionner inserer une ligne ou colonne c'est long mais en creant tes propres barres d'outils tu peux l'avoir en 1 clic cette fonction(inserer ligne).Apres si d'habitude tu faisais /edition/copier puis selection autre cellule /edition/coller, c"etait long.

1 tu selectionne la cellule

2 tu fais inserer une ligne gràce à ta barrre d'outils

3 tu reselectionne la ligne ou il y a la formule

4 tu fais un etirer.

Bonjour

Je viens de tester sur Excel Mac version 11.3.3, et sur une version 9.0.2812 sur PC, j'obtiens le même résultat.

Quand la formule fait partie d'un tableau (3 lignes consécutives pleines), Excel recopie automatiquement la formule après avoir saisie les données sur la nouvelle ligne, il n'y a donc pas à faire de recopie de la formule.

@+Jean-Marie

Sinon moi j'ai sa. sa incere une ligne au dessu de la cellue selectionée et sa recopie les formules de la ligne de dessus en C D E F etc.

Sub Insertionligne()
Rows(ActiveCell.Row).Insert
    Range("C" & ActiveCell.Row - 1 & ":C" & ActiveCell.Row).FillDown
    Range("D" & ActiveCell.Row - 1 & ":D" & ActiveCell.Row).FillDown
    Range("E" & ActiveCell.Row - 1 & ":E" & ActiveCell.Row).FillDown
    Range("F" & ActiveCell.Row - 1 & ":F" & ActiveCell.Row).FillDown
    Range("I" & ActiveCell.Row - 1 & ":I" & ActiveCell.Row).FillDown
    Range("J" & ActiveCell.Row - 1 & ":J" & ActiveCell.Row).FillDown
    Range("K" & ActiveCell.Row - 1 & ":K" & ActiveCell.Row).FillDown
    Range("L" & ActiveCell.Row - 1 & ":L" & ActiveCell.Row).FillDown
    Range("M" & ActiveCell.Row - 1 & ":M" & ActiveCell.Row).FillDown
    Range("N" & ActiveCell.Row - 1 & ":N" & ActiveCell.Row).FillDown
    Range("Q" & ActiveCell.Row - 1 & ":Q" & ActiveCell.Row).FillDown
    Range("R" & ActiveCell.Row - 1 & ":R" & ActiveCell.Row).FillDown
    Range("S" & ActiveCell.Row - 1 & ":S" & ActiveCell.Row).FillDown
'C est la colonne dans laquelle on a la formule
End Sub
Rechercher des sujets similaires à "conserver formule insertion"