Passer au contenu principal

Comment insérer des lignes vides lorsque la valeur change dans Excel?

Supposons que vous ayez une plage de données et que vous souhaitiez maintenant insérer des lignes vides entre les données lorsque la valeur change, afin de pouvoir séparer les mêmes valeurs séquentielles dans une colonne comme les captures d'écran suivantes. Dans cet article, je vais vous parler de quelques astuces pour résoudre ce problème.

Insérer des lignes vides lorsque la valeur change avec la fonction Sous-total

Insérer des lignes vides lorsque la valeur change avec des colonnes d'assistance

Insérer des lignes vides lorsque la valeur change avec le code VBA

Insérez un nombre spécifique de lignes vides lorsque la valeur change avec une fonctionnalité puissante


Insérer des lignes vides lorsque la valeur change avec la fonction Sous-total

Avec la TOTAL fonctionnalité, vous pouvez insérer des lignes vides entre les données lorsque la valeur change comme suit:

1. Sélectionnez la plage de données que vous souhaitez utiliser.

2Cliquez sur Données > TOTAL ouvrir le TOTAL boîte de dialogue et dans la TOTAL boîte de dialogue, veuillez faire les options suivantes:

1: Sélectionnez le nom de la colonne sur laquelle vous souhaitez insérer des lignes vides en fonction du changement de valeur sous A chaque changement dans la section;
2: Choisissez que vous avez du Utilisez la fonction la liste déroulante;
3: Cochez le nom de la colonne dans laquelle vous souhaitez insérer le sous-total dans le Ajouter un sous-total à zone de liste

3. Puis clique OK, les lignes de sous-total ont été insérées entre les différents produits, et les symboles de contour sont affichés à gauche du tableau, voir capture d'écran:

4. Et puis cliquez sur le numéro 2 en haut du symbole de plan pour afficher uniquement les lignes de sous-total.

5. Sélectionnez ensuite les données de plage de sous-total et appuyez sur Alt +; touches de raccourci pour sélectionner uniquement les lignes visibles, voir capture d'écran:

6. Après avoir sélectionné les lignes visibles uniquement, appuyez sur le bouton Supprimer sur le clavier, et toutes les lignes de sous-total ont été supprimées.

7. Cliquez ensuite sur n'importe quelle autre cellule et revenez en arrière Données > Dissocier > Effacer le contour pour supprimer les contours, voir capture d'écran:

8. Les symboles de contour ont été effacés à la fois et vous pouvez voir que des lignes vides ont été insérées entre les données lorsque la valeur change, voir capture d'écran:

9. Enfin, vous pouvez supprimer la colonne A selon vos besoins.


Insérer un saut de page, des lignes vides, une bordure inférieure ou une couleur de remplissage lorsque la valeur change rapidement

Si vous avez Kutools for Excel's Distinguer les différences fonctionnalité, vous pouvez rapidement insérer un saut de page, des lignes vierges, une bordure inférieure ou une couleur de remplissage lorsque la valeur change selon vos besoins. Voir la démo ci-dessous.         Cliquez pour télécharger Kutools for Excel!


Insérer des lignes vides lorsque la valeur change avec des colonnes d'assistance

Avec les colonnes d'assistance, vous pouvez d'abord insérer une formule, puis appliquer le Rechercher et remplacer fonction, enfin, insérez les lignes vides entre les valeurs changeantes. Veuillez procéder comme suit:

1. Dans une cellule vide C3, veuillez entrer cette formule = A3 = A2, et dans la cellule D4 entrez cette formule = A4 = A3, voir capture d'écran:

2. Sélectionnez ensuite C3: D4 et faites glisser la poignée de recopie sur la plage à laquelle vous souhaitez appliquer ces formules, et vous obtiendrez Vrai or Faux dans les cellules, voir capture d'écran:

3. Et puis appuyez sur Ctrl + F clés pour ouvrir le Rechercher et remplacer boîte de dialogue, dans la boîte de dialogue qui apparaît, entrez FAUX into the Trouvez ce que zone de texte sous Trouvez onglet, et cliquez Options bouton pour développer cette boîte de dialogue et choisissez Valeurs du Regarder dans liste déroulante, voir capture d'écran:

4. Cliquez Trouver tout bouton, puis appuyez sur Ctrl + A pour sélectionner tous les résultats de recherche, toutes les cellules FALSE ont été sélectionnées en même temps, voir capture d'écran:

6. Fermer la Rechercher et remplacer boîte de dialogue, étape suivante, vous pouvez insérer des lignes vides en cliquant sur Accueil > insérer > Insérer des lignes de feuille, et des lignes vides ont été insérées dans les données lorsque la valeur change en fonction de la colonne A, voir les captures d'écran:

7. Enfin, vous pouvez supprimer les colonnes d'assistance C et D selon vos besoins.


Insérer des lignes vides lorsque la valeur change avec le code VBA

Si vous êtes fatigué d'utiliser les méthodes ci-dessus, voici un code qui peut également vous aider à insérer des lignes vides entre les valeurs modifiées à la fois.

1. Maintenez le ALT + F11 clés pour ouvrir le Fenêtre Microsoft Visual Basic pour Applications.

2Cliquez sur insérer > Moduleet collez le code suivant dans le Fenêtre du module.

Code VBA: insérer des lignes vides lorsque la valeur change

Sub InsertRowsAtValueChange()
'Update by Extendoffice
Dim Rng As Range
Dim WorkRng As Range
On Error Resume Next
xTitleId = "KutoolsforExcel"
Set WorkRng = Application.Selection
Set WorkRng = Application.InputBox("Range", xTitleId, WorkRng.Address, Type:=8)
Application.ScreenUpdating = False
For i = WorkRng.Rows.Count To 2 Step -1
    If WorkRng.Cells(i, 1).Value <> WorkRng.Cells(i - 1, 1).Value Then
        WorkRng.Cells(i, 1).EntireRow.Insert
    End If
Next
Application.ScreenUpdating = True
End Sub

3. Puis appuyez F5 clé pour exécuter ce code, et une boîte de dialogue apparaîtra pour vous permettre de sélectionner une colonne de données que vous souhaitez insérer des lignes vides lorsque la valeur change sur laquelle vous vous basez, voir capture d'écran:

4. Et puis cliquez OK, les lignes vides ont été insérées entre les données lorsque la valeur change en fonction de la colonne A.


Insérez un nombre spécifique de lignes vides lorsque la valeur change avec une fonctionnalité puissante

Si vous êtes essayé avec les méthodes gênantes ci-dessus, ici, je vais vous présenter un outil utile, Kutools for Excel's Distinguer les différences peut vous aider à insérer un saut de page, des lignes vides, une bordure inférieure ou une couleur de remplissage lorsque la valeur de la cellule change rapidement et facilement.

Conseils:Appliquer cette Distinguer les différences fonctionnalité, tout d'abord, vous devez télécharger le Kutools for Excel, puis appliquez la fonction rapidement et facilement.

Après l'installation de Kutools for Excel, veuillez faire comme ceci:

1Cliquez sur Kutools > Format > Distinguer les différences, voir capture d'écran:

2. Dans le Distinguer les différences par colonne clé boîte de dialogue, veuillez effectuer les opérations suivantes:

  • Sélectionnez la plage de données que vous souhaitez utiliser, puis choisissez la colonne clé sur laquelle vous souhaitez insérer des lignes vides;
  • Puis vérifier Ligne vide Option de Options section et entrez le nombre de lignes vides que vous souhaitez insérer.

3. Puis clique Ok bouton, et le nombre spécifique de lignes vides a été inséré dans les données si la valeur de la cellule change, voir les captures d'écran:

Cliquez pour télécharger Kutools pour Excel et un essai gratuit maintenant!

Meilleurs outils de productivité bureautique

🤖 Aide à l'IA Kutools: Révolutionner l'analyse des données en s'appuyant sur : Exécution intelligente   |  Générer du code  |  Créer des formules personnalisées  |  Analyser les données et générer des graphiques  |  Invoquer les fonctions Kutools...
Caractéristiques populaires: Rechercher, mettre en évidence ou identifier les doublons   |  Supprimer les lignes vides   |  Combinez des colonnes ou des cellules sans perdre de données   |   Tour sans formule 
Super recherche: VSearchup à critères multiples    VSearch à valeurs multiples  |   Recherche virtuelle sur plusieurs feuilles   |   Recherche floue ....
Liste déroulante avancée: Créez rapidement une liste déroulante   |  Liste déroulante dépendante   |  Liste déroulante à sélection multiple ....
Gestionnaire de colonnes: Ajouter un nombre spécifique de colonnes  |  Déplacer les colonnes  |  Basculer l'état de visibilité des colonnes masquées  |  Comparer les plages et les colonnes 
Caractéristiques en vedette: Mise au point de la grille   |  Voir Design   |   Grande barre de formule    Gestionnaire de classeurs et de feuilles   |  Centre de ressources (Texte automatique)   |  Sélecteur de date   |  Combiner des feuilles de travail   |  Crypter/déchiffrer les cellules    Envoyer des e-mails par liste   |  Super filtre   |   Filtre spécial (filtre gras/italique/barré...) ...
Les 15 meilleurs ensembles d'outils12 Texte Outils (Ajouter du texte, Supprimer les caractères, ...)   |   50+ Graphique Types (Diagramme de Gantt, ...)   |   40+ Pratique Formules (Calculer l'âge en fonction de l'anniversaire, ...)   |   19 Insertion Outils (Insérer le code QR, Insérer une image à partir du chemin, ...)   |   12 Conversion Outils (Nombres en mots, Conversion des devises, ...)   |   7 Fusionner et fractionner Outils (Lignes de combinaison avancées, Cellules divisés, ...)   |   ... et plus

Améliorez vos compétences Excel avec Kutools for Excel et faites l'expérience d'une efficacité comme jamais auparavant. Kutools for Excel offre plus de 300 fonctionnalités avancées pour augmenter la productivité et gagner du temps.  Cliquez ici pour obtenir la fonctionnalité dont vous avez le plus besoin...

Description


Office Tab apporte une interface à onglets à Office et facilite grandement 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!
Comments (16)
No ratings yet. Be the first to rate!
This comment was minimized by the moderator on the site
Hi, Hassan,

This vba is amazing, whereas I need one more alternate code for insert single blank row after changes in sequencing numbers. Example:- In column having number series like 1, 2, 3, 5, 6, 9 & etc...
Need to add single blank row between 3 & 5 as well as 6 & 9.
Please can you with this.
This comment was minimized by the moderator on the site
Can the VBA method be adapted to ignore blank cells? I have a file which I need to insert rows in based on two different columns but when I run the macro on the second column I end up with three blank lines where the first macro run inserted rows.
Or can it run on two columns at the same time?
This comment was minimized by the moderator on the site
Hello,
Is very usefull in case i need to insert 1 row, but if i need to insert 145 rows in every time the data change in spwcific column, how can i do it??
This comment was minimized by the moderator on the site
Hi, Hassan,
To insert multiple blank rows when value changes in a specific column, you should apply the following VBA code:

Note: In the below code, you should change the number 99 to your need, for example, when you insert 145 blank rows, you should change the number 99 to 144. Please try it, hope it can help you!

Sub InsertRowsAtValueChange()
Dim Rng As Range
Dim WorkRng As Range
On Error Resume Next
xTitleId = "KutoolsforExcel"
Set WorkRng = Application.Selection
Set WorkRng = Application.InputBox("Range", xTitleId, WorkRng.Address, Type:=8)
Application.ScreenUpdating = False
For i = WorkRng.Rows.Count To 2 Step -1
If WorkRng.Cells(i, 1).Value <> WorkRng.Cells(i - 1, 1).Value Then
Range(WorkRng.Cells(i, 1).EntireRow, WorkRng.Cells(i + 99, 1).EntireRow).Insert
End If
Next
Application.ScreenUpdating = True
End Sub
This comment was minimized by the moderator on the site
Very helpful. The code that skyyang shows above worked perfectly. Just make sure that the data doesn't already have spaces in it.

I don't understand VBA, but I believe if you wanted to add more rows underneath data that already had the spacing, there should be a way to ignore spaces.

Could a line be added to ignore or skip over blank lines? That might make this code more universal and repeatable if needed. Also a delete function that is similar to this may be useful so undo isn't necessary.
This comment was minimized by the moderator on the site
RE: insert blank rows when value changes with vba code
Is there a way that I can save the Range & not have to pick it every time I run it?
This comment was minimized by the moderator on the site
The VBA code worked 1st time and did exactly what I was trying to do. Thank you so much!
This comment was minimized by the moderator on the site
I've been using my own solution for some time.
1. Insert a helper column into Column A
2. In A2, type "if(B2=B1,A1,A1+1)"
3. Copy that formula down to the last row
4. Copy all the populated cells in column A and Paste Special (Values) over them
5. Copy all the cells again and paste them into column A in the first unpopulated cell (e.g. if you have 104 rows of data plus a header row you would paste into cell A106)
6. Click on Data and Remove Duplicates (only on the cells you just pasted in Step 5; not on all rows)
7. Sort all of Column A
8. Delete Column A

Seems like a lot of steps but only takes a few seconds.
This comment was minimized by the moderator on the site
[quote]Hi all thank you!! its awesome , can you guys also let me how to insert 2 rows when the value changes in VBA or through excel.By Hudson[/quote] Please let me know how to insert more than 1 row.
This comment was minimized by the moderator on the site
Hi there, These are almost useful! The first method doesn't work for me because when I follow the steps explicitly, the the data that I delete in the subtotal panes deletes the entire columns that I've sorted. In the second method when I get to the step where I insert sheet rows, the rows are inserted ABOVE the FALSE cells which breaks up the data, but the last selection of every group is then added to the group below. Any advice???
This comment was minimized by the moderator on the site
Hi all thank you!! its awesome , can you guys also let me how to insert 2 rows when the value changes in VBA or through excel.
This comment was minimized by the moderator on the site
Where in the code would I need to modify to include more than one row, I need to add 10 after each break... Thanks
There are no comments posted here yet
Load More
Please leave your comments in English
Posting as Guest
×
Rate this post:
0   Characters
Suggested Locations