Lignes vides

  • Initiateur de la discussion Laydie
  • Date de début
L

Laydie

Guest
Bonjour le forum

Je suis débutant est j'aurais besoin de vos lumières.

J'ai une liste de personnes avec dans les colonnes noms, prénoms, adresse etc.…
Ma liste comporte environ 300 lignes.

Voilà mon problème des personnes arrêtent leurs contrats avec nous donc nous effaçons manuellement des élément et la ligne et vide.
Donc après plusieurs effacements nous avons beaucoup de lignes vides.
Est-il possible via une macro de balayer toutes les lignes de la feuille et supprimer automatiquement les lignes vides ?

Merci d'avance pour cotre collaboration.

Laydie
 

pat1545.

XLDnaute Accro
Salut,

2 codes pour détruire les lignes vides (si la ligne entière est vide) et idem pour les colonnes
A mettre dans un module: ALT F11 Insertion Module
:

Sub DetruireLignesVides() ' Commencer par le bas
DerniereLigne = ActiveSheet.UsedRange.Rows.Count
Application.ScreenUpdating = False
For r = DerniereLigne To 1 Step -1
If Application.CountA(Rows(r)) = 0 Then Rows(r).Delete
Next r
ActiveSheet.UsedRange
End Sub
Sub DetruireColVides()
dernierecol = ActiveSheet.UsedRange.Columns.Count
Application.ScreenUpdating = False
For r = dernierecol To 1 Step -1
If Application.CountA(Columns(r)) = 0 Then Columns(r).Delete
Next r
End Sub

Bye
 

Robert

XLDnaute Barbatruc
Repose en paix
Bonsoir Laydie, Pascal, Pat, bonsoir le forum,

Pat, permet-moi de corriger ton excellent code dans lequel tu as oublié de réactiver le ScreenUpdating:


Sub DetruireLignesVides() ' Commencer par le bas
DerniereLigne = ActiveSheet.UsedRange.Rows.Count
Application.ScreenUpdating = False
For r = DerniereLigne To 1 Step -1
If Application.CountA(Rows(r)) = 0 Then Rows(r).Delete
Next r
Application.ScreenUpdating = True
End Sub

Sub DetruireColVides()
dernierecol = ActiveSheet.UsedRange.Columns.Count
Application.ScreenUpdating = False
For r = dernierecol To 1 Step -1
If Application.CountA(Columns(r)) = 0 Then Columns(r).Delete
Next r
Application.ScreenUpdating = True
End Sub
 

Robert

XLDnaute Barbatruc
Repose en paix
Bonsoir le fil, bonsoir le forum,

Hou la ! C'est possible Pat... C'était juste pour le principe. Je pense qu'il est préférable d'enseigner les bonnes habitudes. Mais je suis désolé d'avoir osé une telle offense. J'aurais pu aussi te dire que cette ligne ne sert à rien dans ton code :
ActiveSheet.UsedRange
si j'avais voulu être chiant... Mais comme je suis quelqu'un d'extrêment courtois, tu penses bien que je ne vais pas le faire. Pff....


Message édité par: Robert, à: 10/04/2006 20:11
 
M

Merci

Guest
Merci à vous tous mais cella ne fonctionne pas j'ai mis la macro et ça bloque.

Je joins un fichier

Merci encore une fois grâce à vous j'ai déjà beaucoup appris.

Merci

Laydie [file name=Lignes_Vides.zip size=10762]http://www.excel-downloads.com/components/com_simpleboard/uploaded/files/Lignes_Vides.zip[/file]
 

Pièces jointes

  • Lignes_Vides.zip
    10.5 KB · Affichages: 19

PascalXLD

XLDnaute Barbatruc
Modérateur
RE

Excuse moi mais j'ai essayé la macro que je t'ai donné et elle fonctionne

Le seul truc ce sont les dernières lignes où tu n'as pas de données qui ne sont pas supprimées. Il faudrait savoir si tu auras toujours de la couleur pour faire un truc [file name=LignesVides.zip size=7968]http://www.excel-downloads.com/components/com_simpleboard/uploaded/files/LignesVides.zip[/file]
 

Pièces jointes

  • LignesVides.zip
    7.8 KB · Affichages: 21

PascalXLD

XLDnaute Barbatruc
Modérateur
Re

Alors légèrement modifié [file name=LignesVides_20060412095139.zip size=8344]http://www.excel-downloads.com/components/com_simpleboard/uploaded/files/LignesVides_20060412095139.zip[/file]
 

Pièces jointes

  • LignesVides_20060412095139.zip
    8.1 KB · Affichages: 16

mutzik

XLDnaute Barbatruc
Bonjour le fil, le forum

Désolé les gars, pourquoi faire compliqué quand on peut faire simple (beaucoup plus simple)

Je dirai que dans un premier temps il serait plus logique de supprimer la ligne plutot que la vider

Deuxiemement : si je sélectionne tout jusqu'à la derniere ligne et que je fasse un tri, les lignes vides seront automatiquement au debut ou en fin de liste (suivant l'ordre de tri)

PS: il a bien précisé en début de son post qu'il était débutant, je pense donc qu'il vaut mieux lui apprendre (s'il ne le sait pas) comment utiliser le tri, les filtres et tutti quanti

Message édité par: mutzik, à: 12/04/2006 10:05
 

andré

XLDnaute Barbatruc
Salut,

Je travaille peut-être de façon quelque peu archaïque, mais voici comment je procède :

Je sélectionne une colonne représentative des lignes à supprimer.
Touche clavier F5 / Cellules / cellules vides / OK.
Menu Edition / Supprimer / lignes entières / OK.

Â+
 

Discussions similaires

  • Résolu(e)
Microsoft 365 Macro VBA
Réponses
16
Affichages
3 K