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

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é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 (22)
Pas encore de notes. Soyez le premier à évaluer!
Ce commentaire a été minimisé par le modérateur sur le site
Quelqu'un pourrait-il me dire comment modifier cela pour ajouter automatiquement la nouvelle ligne au bas d'un tableau Excel?
Ce commentaire a été minimisé par le modérateur sur le site
avez-vous trouvé la réponse ?
Ce commentaire a été minimisé par le modérateur sur le site
Salut, j'utilise ce code mais il ne fait pas tomber les formules de la rangée précédente, pouvez-vous m'aider s'il vous plaît.
Ce commentaire a été minimisé par le modérateur sur le site
Chère Kim,

Veuillez insérer un tableau avec la plage dans laquelle vous insérerez des lignes vides. Après cela, lors de l'insertion d'une nouvelle ligne, la formule se réduira automatiquement.

Cordialement, Cristal
Ce commentaire a été minimisé par le modérateur sur le site
Pouvez vous donner un exemple? Ne pas suivre ce que vous dites ici. Merci
Ce commentaire a été minimisé par le modérateur sur le site
Hi,
Veuillez convertir votre plage en une plage de tableau afin de réduire automatiquement la formule lors de l'insertion de nouvelles lignes. Voir capture d'écran :
Ce commentaire a été minimisé par le modérateur sur le site
J'ai le même problème que Kim - Lorsque la feuille n'est pas protégée, elle ajoute la ligne avec le formatage correct et les formules correctes. Une fois la feuille protégée, elle ne copie pas les formules. Des pensées?
Ce commentaire a été minimisé par le modérateur sur le site
Chère Michèle,
Par défaut, une feuille de calcul protégée ne permet pas d'insérer une ligne vide.
Par conséquent, le code VBA ne peut pas fonctionner dans ce cas.
Ce commentaire a été minimisé par le modérateur sur le site
Existe-t-il un moyen d'ajouter un bouton Insérer une ligne et de faire en sorte que les nouvelles lignes conservent les cellules fusionnées/formatées telles qu'elles sont dans le reste d'un tableau ?
Ce commentaire a été minimisé par le modérateur sur le site
Salut Simon,
Désolé peut encore aider à résoudre ce problème. Merci pour votre commentaire.
Ce commentaire a été minimisé par le modérateur sur le site
Existe-t-il un moyen de faire en sorte que la nouvelle ligne conserve la mise en forme de la ligne du dessous au lieu de la ligne du dessus ?
Ce commentaire a été minimisé par le modérateur sur le site
Salut Tarl,
Désolé peut encore aider à résoudre ce problème. Merci pour votre commentaire.
Ce commentaire a été minimisé par le modérateur sur le site
Oui, j'ai joué avec le script et ça a marché pour moi. Vous ajoutez simplement le numéro de ligne que vous voulez (j'ai choisi la ligne 6), mais je serai choqué s'il est autorisé à être publié.

Private Sub CommandButton1_Click ()
Dim rowNum As Integer
On Error Resume Next
Rows(rowNum & "6").Insert Shift:=xlDown
End Sub
Ce commentaire a été minimisé par le modérateur sur le site
peut éventuellement insérer plusieurs rangées de feuilles en même temps, cliquez dessus.
Ce commentaire a été minimisé par le modérateur sur le site
Hi,
Le code ci-dessous peut vous aider à résoudre le problème. Veuillez essayer.

Private Sub CommandButton1_Click ()
Dim xIntRrow As Integer
Dim rowNum As Integer
On Error Resume Next
rowNum = Application.InputBox(Prompt:="Entrez le numéro de ligne où vous souhaitez ajouter une ligne :", _
Titre :="Kutools pour excel", Type :=1)
xIntRrow = Application.InputBox(Prompt:="Tapez le nombre de lignes que vous souhaitez insérer", _
Titre :="Kutools pour excel", Type :=1)
Rows(rowNum + 1 & ":" & rowNum + 1).EntireRow.Resize(xIntRrow).Insert Shift:=xlShiftDown

End Sub
Ce commentaire a été minimisé par le modérateur sur le site
est-il possible de créer dans une feuille différente? j'ai vraiment besoin de ça
Ce commentaire a été minimisé par le modérateur sur le site
Sous AjouterNouvelleLigne()



Private Sub CommandButton1_Click ()

ActiveSheet.Unprotect Password :="1234"



Assombrir mes feuilles

Dim i As Long



mesFeuilles = Tableau("Feuille2")



Pour i = LBound(mySheets) To UBound(mySheets)

Avec feuilles(mesfeuilles(i))

.Range("B10").EntireRow.Insert Shift :=xlDown

.Range("B10:H10").Borders.Weight = xlThin

Terminer par

Suivant i



ActiveSheet.Protect Mot de passe :="1234"



End Sub

Je ne sais pas si cela fonctionnera pour vous. Cela a très bien fonctionné pour moi. J'ai même laissé des cellules non protégées dans lesquelles vous pouvez saisir des données et les formules sont toujours actives. J'ai mis une journée entière à comprendre. remplacez "1234" par le mot de passe de votre choix, "Sheet2" par la feuille avec laquelle vous travaillez et saisissez la plage souhaitée.
Le code déprotége d'abord la feuille de calcul, ajoute une ligne et protège la feuille de calcul.
kiongakamau@gmail.com
Ce commentaire a été minimisé par le modérateur sur le site
Hi

J'ai utilisé le code mais je voulais ajouter des lignes avec des formules, j'ai donc ajouté la dernière ligne pour pouvoir ajouter les lignes avec des formules.
Cependant, dans mon fichier Excel et dans la colonne "F", j'ai un texte qui peut être saisi manuellement et qui serait différent dans différents cas. Par conséquent, je voudrais ajouter des lignes sous la ligne de référence en conservant les formules et les valeurs dans toutes les cellules sauf la cellule de la colonne "F" que je voudrais copier en blanc !
Pourriez-vous s'il vous plaît m'aider avec ce que dois-je ajouter au code ci-dessous pour pouvoir avoir les cellules de la colonne "F" vides chaque fois que j'ajoute une ligne avec ce code?
Merci d'avance!

Private Sub CommandButton1_Click ()
Dim xIntRrow As Integer
Dim rowNum As Integer
On Error Resume Next
rowNum = Application.InputBox(Prompt:="Entrez le numéro de ligne où vous souhaitez ajouter une ligne :", _
Titre :="Kutools pour excel", Type :=1)
xIntRrow = Application.InputBox(Prompt:="Tapez le nombre de lignes que vous souhaitez insérer", _
Titre :="Kutools pour excel", Type :=1)
Rows(rowNum + 1 & ":" & rowNum + 1).EntireRow.Resize(xIntRrow).Insert Shift:=xlShiftDown
Lignes(rowNum).Resize(xIntRrow + 1).FillDown

End Sub
Ce commentaire a été minimisé par le modérateur sur le site
Salut Mah,
Le code VBA suivant peut vous rendre service. Veuillez essayer. Merci.

Private Sub CommandButton1_Click()
'Updated by Extendoffice 20220707
    Dim rowNum As Integer
    Dim xRg1, xRg2 As Range
    
    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
    Rows((rowNum - 1) & ":" & (rowNum - 1)).Copy
    Rows(rowNum & ":" & rowNum).Select
    Selection.PasteSpecial Paste:=xlPasteAll, Operation:=xlNone, SkipBlanks:= _
        False, Transpose:=False
    Range("F" & rowNum).Value = ""
End Sub
Ce commentaire a été minimisé par le modérateur sur le site
Caros colegas, após pesquisar (bastante) na net não consegui encontrar um atalho, comando, código, nada, nada, que eu possa usar para inserir em uma macro APENAS uma forma de inserir uma linha ABAIXO da célula ativa. Isto porquê se eu gravar o endereço da célula, ele não muda, fica semper na mesma célula e as seguintes não vão ficar corretamente abaixo, e se eu usar um endereço de célula fixo, a linha tem que ser inserida acima, mas não formata da forma desejada, que seria o formato das linhas de cima.

Acho que o código existe, só não encontro, já tentei várias formas, selecionando um fixo, subindo uma linha e pedindo para inserir após, mas as seguintes não funcionam de acordo.

Alguém poderia me ajudar?
Ce commentaire a été minimisé par le modérateur sur le site
... Testei os códigos acima, mas, como se trata de pessoas que vão usar, não é viavel os box que pedem a linha ea quantidade, não dá...
Ce commentaire a été minimisé par le modérateur sur le site
Criei uma linha e nomeei como spotB,
Mudei a altura da linha para 0,01 para ocultá-la (apenas por estética).
Criei um botão :
Application.Goto Reference :="spotB"
Selection.EntireRow.Insert

Problème résolu.

Obrigado pelos códigos a Mah e crystal, mas eu tinha 8 títulos para separar, cada um inserindo linhas quando necessário ao usuário, e não queria nenhuma pergunta quantidade de linhas sobre, os usuários não leem perguntas e clicam logo em OK, depois reclamam.. .
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