Note: The other languages of the website are Google-translated. Back to English
Se connecter  \/ 
x
or
x
INSCRIPTION  \/ 
x

or

Comment insérer automatiquement une nouvelle ligne vierge par le bouton de commande dans Excel?

Dans de nombreux cas, vous devrez peut-être insérer une nouvelle ligne vide dans une position spécifiée de votre feuille de calcul. Dans cet article, nous allons vous montrer comment insérer automatiquement une nouvelle ligne vierge en cliquant sur un bouton de commande dans Excel.

Insérez automatiquement une nouvelle ligne vierge par le bouton de commande


Insérez automatiquement une nouvelle ligne vierge par le bouton de commande

Vous pouvez exécuter le code VBA suivant pour insérer une nouvelle ligne vide en cliquant sur un bouton de commande. Veuillez faire comme suit.

1. Tout d'abord, vous devez insérer un bouton de commande. Cliquez s'il vous plait Développeur > insérer > Bouton de commande (contrôle ActiveX). Voir la capture d'écran:

2. Dessinez ensuite un bouton de commande dans la feuille de calcul dont vous avez besoin pour ajouter de nouvelles lignes, cliquez avec le bouton droit sur le bouton de commande et cliquez sur Propriétés dans le menu contextuel.

3. dans le Propriétés boîte de dialogue, entrez le texte affiché du bouton de commande dans le Légende boîte sous la Classés onglet, puis fermez la boîte de dialogue.

Vous pouvez voir que le texte affiché du bouton de commande est modifié comme illustré ci-dessous.

4. Cliquez à nouveau avec le bouton droit sur le bouton de commande, puis cliquez sur Voir le code dans le menu contextuel.

5. Puis le Microsoft Visual Basic pour applications fenêtre, veuillez remplacer le code d'origine par le code VBA ci-dessous dans le Code fenêtre.

Code VBA: insérer automatiquement une nouvelle ligne vierge par le bouton de commande

Private Sub CommandButton1_Click()
    Dim rowNum As Integer
    On Error Resume Next
    rowNum = Application.InputBox(Prompt:="Enter Row Number where you want to add a row:", _
                                    Title:="Kutools for excel", Type:=1)
    Rows(rowNum & ":" & rowNum).Insert Shift:=xlDown
End Sub

Notes: Dans le code, CommanButton1 est le nom du bouton de commande que vous avez créé.

6. presse autre + Q touches simultanément pour fermer le Microsoft Visual Basic pour applications la fenêtre. Et éteignez le Mode de conception sous le Développeur languette.

7. Cliquez sur le bouton de commande inséré et un Kutools pour Excel la boîte de dialogue apparaît. Veuillez saisir un certain numéro de ligne à laquelle vous souhaitez ajouter une nouvelle ligne vierge, puis cliquez sur le bouton OK bouton. Voir la capture d'écran:

Ensuite, la nouvelle ligne vide est insérée dans une position spécifiée de votre feuille de calcul comme illustré ci-dessous. Et il conserve la mise en forme de la cellule ci-dessus.


Articles connexes:


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ée...
  • 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 gammes...
  • 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 cellules...
  • 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 PDF...
  • 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
Say something here...
symbols left.
You are guest
or post as a guest, but your post won't be published automatically.
Loading comment... The comment will be refreshed after 00:00.
  • To post as a guest, your comment is unpublished.
    Kamau Kionga · 1 years ago
    Sub AddNewRow()

    Private Sub CommandButton1_Click()
    ActiveSheet.Unprotect Password:="1234"

    Dim mySheets
    Dim i As Long

    mySheets = Array("Sheet2")

    For i = LBound(mySheets) To UBound(mySheets)
    With Sheets(mySheets(i))
    .Range("B10").EntireRow.Insert Shift:=xlDown
    .Range("B10:H10").Borders.Weight = xlThin
    End With
    Next i

    ActiveSheet.Protect Password:="1234"

    End Sub

    I don't know if this will work for you. It worked quite well for me. I even left unprotected cells that you can input data and the formulas are still active. Took me a whole day to figure it out. replace "1234" with whatever password you feel like, "Sheet2" with the Sheet you are working with and input the range you want.
    The code first unprotects the worksheet, adds row and protects the worksheet.
    kiongakamau@gmail.com
  • To post as a guest, your comment is unpublished.
    goncalo.teixeira992@gmail.com · 1 years ago
    is it possible to create in a different sheet? I really need that
  • To post as a guest, your comment is unpublished.
    arif · 2 years ago
    can possible insert multiple sheet row at one time click by this .
    • To post as a guest, your comment is unpublished.
      crystal · 1 years ago
      Hi,
      The below code can help you solve the problem. Please have a try.

      Private Sub CommandButton1_Click()
      Dim xIntRrow As Integer
      Dim rowNum As Integer
      On Error Resume Next
      rowNum = Application.InputBox(Prompt:="Enter Row Number where you want to add a row:", _
      Title:="Kutools for excel", Type:=1)
      xIntRrow = Application.InputBox(Prompt:="Type in the number of rows you want to insert", _
      Title:="Kutools for excel", Type:=1)
      Rows(rowNum + 1 & ":" & rowNum + 1).EntireRow.Resize(xIntRrow).Insert Shift:=xlShiftDown

      End Sub
  • To post as a guest, your comment is unpublished.
    JW · 2 years ago
    Yes, I played with the script and it worked for me. You just add the row number you want (I chose row 6), but I'll be shocked if it's allowed to be published.

    Private Sub CommandButton1_Click()
    Dim rowNum As Integer
    On Error Resume Next
    Rows(rowNum & "6").Insert Shift:=xlDown
    End Sub
  • To post as a guest, your comment is unpublished.
    Tarl · 2 years ago
    Is there a way to have the new row keep the formatting of the row below instead of the row above?
    • To post as a guest, your comment is unpublished.
      crystal · 2 years ago
      Hi Tarl,
      Sorry can help solving this problem yet. Thanks for your comment.
  • To post as a guest, your comment is unpublished.
    Simon · 3 years ago
    Is there a way to add an Insert Row button and have the new rows keep the cells merged/formatted as they are in the rest of a table?
    • To post as a guest, your comment is unpublished.
      crystal · 2 years ago
      Hi Simon,
      Sorry can help solving this problem yet. Thanks for your comment.
  • To post as a guest, your comment is unpublished.
    stiles.michellel@gmail.com · 3 years ago
    I'm having the same issue as Kim - When the sheet is unprotected it adds the row with the correct formatting and correct formulas. Once the sheet is protected it doesn't copy down the formulas. Any thoughts?
    • To post as a guest, your comment is unpublished.
      crystal · 3 years ago
      Dear Michelle,
      By default, a protected worksheet does not allow to insert blank row.
      Therefore, the VBA code can't work in that case.
  • To post as a guest, your comment is unpublished.
    Kim · 4 years ago
    Hi

    I am using this code but it is not bringing down the formulas from the row before, can you help please.
    • To post as a guest, your comment is unpublished.
      crystal · 4 years ago
      Dear Kim,

      Please insert a Table with the range you will insert blank rows inside. After that, when inserting new row, the formula will bring down automatically.

      Best Regards, Crystal
      • To post as a guest, your comment is unpublished.
        Robert · 3 years ago
        Can you provide an example? Not following what you're say here. Thanks
        • To post as a guest, your comment is unpublished.
          crystal · 3 years ago
          Hi,
          Please convert your range to a table range in order to bring down the formula automatically when inserting new rows. See screenshot:
  • To post as a guest, your comment is unpublished.
    Lydia · 4 years ago
    Could anyone advise on how can I amend this to automatically add the new row to the bottom of an excel table?
    • To post as a guest, your comment is unpublished.
      Raviv · 4 years ago
      did you find the answer ?