Note: The other languages of the website are Google-translated. Back to English

 Comment remplir automatiquement la formule lors de l'insertion de lignes dans Excel?

Lorsque vous insérez des lignes vides entre des lignes de données existantes, la formule ne sera pas copiée et collée dans la nouvelle ligne, vous devez la faire glisser ou la remplir manuellement. Mais, parfois, vous souhaitez remplir la formule lorsque vous insérez automatiquement des lignes vides entre la plage de données, comme illustré ci-dessous, cet article, je vais parler de quelques astuces rapides pour résoudre cette tâche.

doc remplissage automatique de la formule insertion de la ligne 1

Formule de remplissage automatique lors de l'insertion de lignes vides lors de la création d'un tableau

Formule de remplissage automatique lors de l'insertion de lignes vides avec le code VBA


Formule de remplissage automatique lors de l'insertion de lignes vides lors de la création d'un tableau


Dans Excel, le format de tableau peut vous aider à remplir automatiquement la formule ci-dessus dans les nouvelles lignes vides insérées, procédez comme suit:

1. Sélectionnez la plage de données pour laquelle vous souhaitez remplir automatiquement la formule, puis cliquez sur insérer > Tableau, voir capture d'écran:

doc remplissage automatique de la formule insertion de la ligne 2

2. Dans le Créer un tableau boîte de dialogue, vérifiez la Mon tableau a des en-têtes s'il y a des en-têtes dans vos données, voir capture d'écran:

doc remplissage automatique de la formule insertion de la ligne 3

3. Puis clique OK bouton, et le tableau a été créé, et maintenant, lorsque vous insérez une ligne vide, la formule ci-dessus sera insérée automatiquement dans la nouvelle ligne, voir capture d'écran:

doc remplissage automatique de la formule insertion de la ligne 4


Formule de remplissage automatique lors de l'insertion de lignes vides avec le code VBA

Si vous n'aimez pas modifier les données en table, le code VBA ci-dessous peut également vous aider à résoudre ce problème.

1. Sélectionnez l'onglet de la feuille de calcul qui contient les formules que vous souhaitez remplir automatiquement et cliquez avec le bouton droit pour choisir Voir le code dans le menu contextuel pour accéder à Microsoft Visual Basic pour applications , puis copiez et collez le code suivant dans le module:

Code VBA: formule de remplissage automatique lors de l'insertion de lignes vides

Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
'Updateby Extendoffice 20160725
    Cancel = True
    Target.Offset(1).EntireRow.Insert
    Target.EntireRow.Copy Target.Offset(1).EntireRow
    On Error Resume Next
    Target.Offset(1).EntireRow.SpecialCells(xlConstants).ClearContents
End Sub

doc remplissage automatique de la formule insertion de la ligne 5

2. Ensuite, enregistrez et fermez ce code, revenez à la feuille de calcul, maintenant, lorsque vous double-cliquez sur une cellule entre les données, une nouvelle ligne sera insérée sous la cellule active et la formule est également remplie automatiquement.


Démo: formule de remplissage automatique lors de l'insertion de lignes vides


Les meilleurs outils de productivité de bureau

Kutools for Excel résout la plupart de vos problèmes et augmente votre productivité de 80%

  • Réutilisation: Insérer rapidement formules complexes, graphiques et tout ce que vous avez utilisé auparavant; Crypter les cellules avec mot de passe; Créer une liste de diffusion et envoyer des e-mails ...
  • Barre Super Formula (modifiez facilement plusieurs lignes de texte et de formule); Disposition de lecture (lire et modifier facilement un grand nombre de cellules); Coller dans la plage filtréeplus
  • Fusionner les cellules / lignes / colonnes sans perdre de données; Contenu des cellules divisées; Combiner des lignes / colonnes en double... Empêcher les cellules en double; Comparer les gammesplus
  • Sélectionnez Dupliquer ou Unique Lignes; Sélectionnez les lignes vides (toutes les cellules sont vides); Super Find et Fuzzy Find dans de nombreux classeurs; Sélection aléatoire ...
  • Copie exacte Plusieurs cellules sans changer la référence de formule; Créer automatiquement des références à plusieurs feuilles; Insérer des puces, Cases à cocher et plus encore ...
  • Extrait du texte, Ajouter du texte, Supprimer par position, Supprimer l'espace; Créer et imprimer des sous-totaux de pagination; Conversion entre le contenu et les commentaires des cellulesplus
  • Super filtre (enregistrer et appliquer des schémas de filtrage à d'autres feuilles); Tri avancé par mois / semaine / jour, fréquence et plus; Filtre spécial par gras, italique ...
  • Combiner des classeurs et des feuilles de travail; Fusionner les tableaux en fonction des colonnes clés; Diviser les données en plusieurs feuilles; Conversion par lots xls, xlsx et PDFplus
  • Plus de 300 fonctionnalités puissantes. Prend en charge Office / Excel 2007-2019 et 365. Prend en charge toutes les langues. Déploiement facile dans votre entreprise ou organisation. Essai gratuit de 30 jours. Garantie de remboursement de 60 jours.
onglet kte 201905

Office Tab apporte une interface à onglets à Office et simplifie considérablement votre travail

  • Activer l'édition et la lecture par onglets dans Word, Excel, PowerPoint, Publisher, Access, Visio et Project.
  • Ouvrez et créez plusieurs documents dans de nouveaux onglets de la même fenêtre, plutôt que dans de nouvelles fenêtres.
  • Augmente votre productivité de 50% et réduit des centaines de clics de souris chaque jour!
bas de cabine
Commentaires (12)
Pas encore de notes. Soyez le premier à évaluer!
Ce commentaire a été minimisé par le modérateur sur le site
J'ai suivi le code VBA mentionné ci-dessus pour mon xls. J'ai un .xls avec plusieurs feuilles, je veux que si j'insère une ligne dans ma feuille au début ou dans l'une des feuilles d'ailleurs, il devrait insérer automatiquement une ligne dans toutes mes feuilles dans la même feuille de calcul. De plus, chacune de mes feuilles en tant que formules, je veux donc que la formule de la ligne ci-dessus se remplisse automatiquement dans la nouvelle ligne, ce qui ne se produit pas totalement si je suis le code VBA mentionné, les lignes sont insérées dans toutes mes feuilles la formule s'affiche également mais il manque une ligne. Par exemple. J'ai la feuille A avec 100 lignes, la feuille B avec 100 ros et ainsi de suite avec d'autres feuilles. Si j'insère une ligne dans la feuille A, elle affiche l'insertion automatique dans la feuille B, mais les valeurs de la feuille B de certaines colonnes sont liées à la feuille A et au moment où j'insère une ligne, par exemple 10, la ligne 11 est une nouvelle ligne et la même ligne 11 dans la feuille B apparaît également mais la valeur qu'il devrait tirer de la ligne 11 de la feuille A de la colonne C plutôt qu'elle montre la ligne 12 de la feuille A, cela se produit sur n'importe quelle ligne j'insère la valeur dans la feuille B est toujours de la ligne suivante plutôt que de la même ligne que j'ai inséré. Un autre problème qui vient ici est avec ma première colonne Sr. non au moment où j'insère une ligne dans 5, sr no 6 avec une nouvelle ligne apparaît mais avant cela j'avais déjà la ligne 6 car j'ai une formule pour Sr. no A6 + 1 car ma colonne commence à partir de A6 et ainsi de suite, comment trier ce problème avec 2 lignes avec le même sr. non. C'est une feuille très cruciale sur laquelle je travaille et j'ai besoin de le trier, j'ai arbitré de nombreux codes VBA mais aucun n'est efficace. En espérant une solution adéquate à mon problème.
Ce commentaire a été minimisé par le modérateur sur le site
chère formule ci-dessus qui permet de mettre à jour la formule ci-dessus lors de l'insertion d'une ligne en double-cliquant. Je veux savoir comment utiliser ce code de manière permanente car lorsque je ferme la feuille et que je rouvre le code, il se termine. S'il vous plaît aider à résoudre le problème. Cette formule m'est très utile
Ce commentaire a été minimisé par le modérateur sur le site
Solution très simple. Merci beaucoup.
Ce commentaire a été minimisé par le modérateur sur le site
Salut Bilal. Vous devez enregistrer le fichier en tant que fichier "Macro Enabled" pour que le code fonctionne une fois que vous fermez et rouvrez le fichier. Pour enregistrer le fichier en tant que macro, utilisez simplement "Enregistrer sous", puis sélectionnez "Excel-Macro Enabled Workbook" pour obtenir le résultat souhaité.
Ce commentaire a été minimisé par le modérateur sur le site
La formule ci-dessus est très utile pour moi s'il vous plaît dites-moi comment utiliser ce code de façon permanente
Ce commentaire a été minimisé par le modérateur sur le site
Ce code est très bon, mais il ne met pas à jour la référence de cellule dans la première ligne suivante après la ligne insérée. Peux-tu aider s'il te plait? ex : 50 10 40 40 10 50 40 20 20
Ce commentaire a été minimisé par le modérateur sur le site
Le code fonctionne très bien, mais ne met pas à jour la référence de cellule dans la première ligne après la ligne insérée.Voir ci-dessous" par exemple 50 10 40 40 10 50 40 20 20
Ce commentaire a été minimisé par le modérateur sur le site
La méthode du tableau fonctionne-t-elle dans Excel pour XP (2002) et si oui, comment ?
Ce commentaire a été minimisé par le modérateur sur le site
J'utilise le code pour insérer une ligne lors d'un double-clic. Cependant, il y a quelque chose qui ne va pas, Excel n'incrémente pas la première référence de ma formule dans la ligne suivante. Cependant, il est corrigé pour toutes les lignes restantes.
J'ai inséré une ligne à la ligne 144 et voici ce que j'ai obtenu : (notez que S144 en 3ème ligne devrait être S145)
row 144 =(S143+D144+E144)-(K144+L144+M144+N144+O144+Q144+R144)
row 145 =(S144+D145+E145)-(K145+L145+M145+N145+O145+Q145+R145)
row 146 =(S144+D146+E146)-(K146+L146+M146+N146+O146+Q146+R146)
row 147 =(S146+D147+E147)-(K147+L147+M147+N147+O147+Q147+R147)
Des indices sur la raison pour laquelle il fait cela, je ne pense pas que ce soit le VBA ???
David
Ce commentaire a été minimisé par le modérateur sur le site
Hi,

Ce code est très utile, cependant, j'ai une exigence légèrement différente. Les formules doivent être copiées lorsque la ligne est insérée manuellement, c'est-à-dire par "insert row".
Pouvez-vous s'il vous plaît renvoyer le code après avoir incorporé ce changement, c'est-à-dire au lieu de "Worksheet_BeforeDoubleClick", un autre point de déclenchement à utiliser "insert row/etc"

Remarque - Je n'ai aucune exposition au codage provenant de l'arrière-plan des comptes.


Cordialement
Niket Shet
Ce commentaire a été minimisé par le modérateur sur le site
Salut Niket. Vous pouvez voir toutes les options pour différents points de déclenchement dans l'onglet lui-même.

Pour cela, cliquez sur CTRL + F11 pour ouvrir l'éditeur de code comme expliqué dans la vidéo ci-dessus, et il y aura 2 listes déroulantes en haut du code que vous copierez, cliquez sur la deuxième liste déroulante et vous trouverez de nombreuses options pour différents déclencheurs points.

La première liste déroulante serait idéalement définie sur "Feuille de calcul" et la seconde sur "Avant DoubleClic". Vous pouvez modifier le deuxième point de déclenchement à votre guise et l'utiliser en conséquence.

Hope it helps!
Ce commentaire a été minimisé par le modérateur sur le site
Excellent morceau de code simple !!!!
Il n'y a pas encore de commentaires postés ici
Laisser vos commentaires
Publier en tant qu'invité
×
Évaluez cet article:
0   Personnages
Emplacements suggérés