Ne laisser qu'une ligne de vide entre texte

Y compris Power BI, Power Query et toute autre question en lien avec Excel
a
atoch
Jeune membre
Jeune membre
Messages : 13
Inscrit le : 24 septembre 2019
Version d'Excel : 2013,FR

Message par atoch » 30 septembre 2019, 20:10

Bonjour à tous,

je recherche une macro pour supprimer toutes les lignes vides en partant de la colonne B.
Il arrive que j'ai 3 ou 2 lignes de vide dans mon tableau.
en fait je ne veux plus qu'une ligne vide entre 2 lignes de texte.

c'est plus facile de voir l'exemple dans mon fichier joint.

merci d'avance de votre aide

cordialement atoch
ne laisser qu'une ligne vide.xlsx
(8.34 Kio) Téléchargé 6 fois
d
ddetp88
Membre dévoué
Membre dévoué
Messages : 870
Appréciations reçues : 6
Inscrit le : 5 janvier 2015
Version d'Excel : 2016

Message par ddetp88 » 30 septembre 2019, 20:31

Bonsoir,

Essaie ce code à placer dans un module.
Sub SupLigne()
Dim Derl%, v%, depart%
With ActiveSheet
   Derl = .Range("B" & Rows.Count).End(xlUp).Row
   v = 0: depart = 3
   For i = depart To Derl
      If .Cells(i, "B") <> "" Then v = 0
      If .Cells(i, "B") = "" Then v = v + 1
      If v = 2 Then
         v = 0
         Rows(i).Delete
      End If
   Next i
End With
End Sub
Il faudra le lancer plusieurs fois si tu as plus de deux lignes vides.

Coridalement
Avatar du membre
xorsankukai
Membre impliqué
Membre impliqué
Messages : 1'878
Appréciations reçues : 193
Inscrit le : 7 octobre 2014
Version d'Excel : 2010 FR

Message par xorsankukai » 30 septembre 2019, 20:39

Bonsoir atoch, ddetp88, le forum,

Un essai....CTRL+e pour exécuter la macro
Sub test()
  Dim lig As Long
  
  Application.ScreenUpdating = False

With Sheets("Feuil1")
 .Range("B2:B" & Range("B" & Rows.Count).End(xlUp).Row).SpecialCells(xlCellTypeBlanks).EntireRow.Delete  'supprime lignes vides
  For lig = .Range("B" & Rows.Count).End(xlUp).Row To 2 Step -1
   If .Range("A" & lig) <> "" Then .Rows(lig).Insert      'insère 1 ligne vide
  Next lig
End With

 Application.ScreenUpdating = True
 
End Sub
ne laisser qu'une ligne vide-4.xlsm
(14.06 Kio) Téléchargé 5 fois
Cordialement,
xorsankukai

La connaissance, c’est partager le savoir qui nous fait grandir.
a
atoch
Jeune membre
Jeune membre
Messages : 13
Inscrit le : 24 septembre 2019
Version d'Excel : 2013,FR

Message par atoch » 30 septembre 2019, 22:37

Bonjour xorsankukai ,

le code fonctionne à merveille
j'ai juste un soucis au niv des lignes qu'il m'insère, il faut partire de la dernière ligne de la colonne B mais doit s'arrêter à la ligne n°13. Tout ce qui est depuis la ligne 1 à 12 inclus ne doit pas être changé.

merci de votre aide

cordialement atoch
a
atoch
Jeune membre
Jeune membre
Messages : 13
Inscrit le : 24 septembre 2019
Version d'Excel : 2013,FR

Message par atoch » 30 septembre 2019, 22:38

Bonsoir ddetp88,

merci de votre aide et solution. je vais la tester et vous redis.

cordialement atoch
Avatar du membre
xorsankukai
Membre impliqué
Membre impliqué
Messages : 1'878
Appréciations reçues : 193
Inscrit le : 7 octobre 2014
Version d'Excel : 2010 FR

Message par xorsankukai » 30 septembre 2019, 22:49

Re,
j'ai juste un soucis au niveau des lignes qu'il m'insère, il faut partir de la dernière ligne de la colonne B mais doit s'arrêter à la ligne n°13.
A tester :
Sub test()
  Dim lig As Long
  
  Application.ScreenUpdating = False

With Sheets("Feuil1")
 .Range("B2:B" & Range("B" & Rows.Count).End(xlUp).Row).SpecialCells(xlCellTypeBlanks).EntireRow.Delete  'supprime lignes vides
  For lig = .Range("B" & Rows.Count).End(xlUp).Row To 13 Step -1
   If .Range("A" & lig) <> "" Then .Rows(lig).Insert      'insère 1 ligne vide
  Next lig
End With

 Application.ScreenUpdating = True
 
End Sub
Bonne nuit.... :-oO:
xorsankukai

La connaissance, c’est partager le savoir qui nous fait grandir.
a
atoch
Jeune membre
Jeune membre
Messages : 13
Inscrit le : 24 septembre 2019
Version d'Excel : 2013,FR

Message par atoch » 1 octobre 2019, 08:47

bonjour xorsankukai,

j'ai trouvé la solution en adaptant un peu ta formule.

un grand merci pour ton aide.

cordialement atoch
Répondre Sujet précédentSujet suivant
  • Sujets similaires
    Réponses
    Vues
    Dernier message