Précédent   Forum des professionnels en informatique > Logiciels > Microsoft Office > Excel
Excel Forum d'entraide sur Excel. Vos questions sur les fonctions, formules, manipulations, et tout sujet qui ne trouve pas sa place dans un sous-forum.
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 16/01/2012, 13h09   #1
Membre habitué
 
Avatar de zangaloni
 
Étudiant
Inscription : mars 2009
Messages : 464
Détails du profil
Informations professionnelles :
Activité : Étudiant

Informations forums :
Inscription : mars 2009
Messages : 464
Points : 114
Points : 114
Par défaut supprimer les lignes vides

Bonjour,

y a t'il un moyen de supprimer les lignes vides dans un tableau ?

crdlt.
__________________
il faut être patient et ambitieux
bonne chance à tout le monde
zangaloni est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 16/01/2012, 13h26   #2
Expert Confirmé Sénior
 
Avatar de jfontaine
 
Homme Jérôme FONTAINE
Contrôleur de Gestion
Inscription : juin 2006
Messages : 3 924
Détails du profil
Informations personnelles :
Nom : Homme Jérôme FONTAINE
Âge : 38
Localisation : France, Sarthe (Pays de la Loire)

Informations professionnelles :
Activité : Contrôleur de Gestion

Informations forums :
Inscription : juin 2006
Messages : 3 924
Points : 7 254
Points : 7 254
Bonjour,

Il existe plusieurs méthodes pour faire cela dont une consiste à trier ton tableau sur une colonne obligatoire.
__________________
Jérôme

Citation:
"Ils ne savaient pas que c'était impossible, alors ils l'ont fait" - Marc Twain
Si la réponse répond à votre besoin, votre vote nous encouragera.
Dans le cas ou la réponse mérite, à vos yeux, un , nous faire partager la raison de ce vote, pourrait nous permettre de nous améliorer.
jfontaine est actuellement connecté   Envoyer un message privé Réponse avec citation 00
Vieux 16/01/2012, 13h28   #3
Membre confirmé
 
Homme Denis Morena
Technicien qualité et métrologie industrielle
Inscription : avril 2011
Messages : 115
Détails du profil
Informations personnelles :
Nom : Homme Denis Morena
Localisation : France, Gironde (Aquitaine)

Informations professionnelles :
Activité : Technicien qualité et métrologie industrielle
Secteur : Industrie

Informations forums :
Inscription : avril 2011
Messages : 115
Points : 221
Points : 221
Bonjour,

tu peux utiliser cette macro :

Code :
1
2
3
4
5
6
7
Sub VideDelete()
 
    For i = 1 To Range("A65536").End(xlUp).Row
        If Cells(i, 1).Value = "" Then Rows(i & ":" & i).Delete Shift:=xlUp
    Next
 
End Sub
ici c'est la colonne A qui est testé.

Pour adapter tu as :

Code :
Range("A65536").End(xlUp).Row
si ton tableau commence en B par exemple tu l'remplace par :

Code :
Range("B65536").End(xlUp).Row
Sinon,

teste la valeur dans la colonne A, à remplacer par :

Si la valeur que tu dois tester est en colonne B par exemple.
Si tu veux plus de détails n'hésite pas.

Cordialement
White Mibu est déconnecté   Envoyer un message privé Réponse avec citation 10
Vieux 16/01/2012, 14h46   #4
Membre habitué
 
Avatar de zangaloni
 
Étudiant
Inscription : mars 2009
Messages : 464
Détails du profil
Informations professionnelles :
Activité : Étudiant

Informations forums :
Inscription : mars 2009
Messages : 464
Points : 114
Points : 114
ça fonctionne parfaitement.

Mercii
zangaloni est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 16/01/2012, 16h15   #5
Membre habitué
 
Avatar de zangaloni
 
Étudiant
Inscription : mars 2009
Messages : 464
Détails du profil
Informations professionnelles :
Activité : Étudiant

Informations forums :
Inscription : mars 2009
Messages : 464
Points : 114
Points : 114
J'ai un petit souci.
j'ai besoin de supprimer en plus des lignes vides des lignes qui contiennent un critère.
avec cette boucle ça prend énormément de temps.
y a t'il pas un autre moyen plus rapide ?
__________________
il faut être patient et ambitieux
bonne chance à tout le monde
zangaloni est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 16/01/2012, 16h42   #6
Rédacteur
 
Avatar de Ormonth
 
Homme Didier GONARD
Formateur Développeur Office - indépendant
Inscription : février 2008
Messages : 2 353
Détails du profil
Informations personnelles :
Nom : Homme Didier GONARD
Localisation : France, Loire Atlantique (Pays de la Loire)

Informations professionnelles :
Activité : Formateur Développeur Office - indépendant

Informations forums :
Inscription : février 2008
Messages : 2 353
Points : 4 685
Points : 4 685
bonjour,

Utilises les filtres auto, tu sélectionnes vides sur la ou les colonnes voulues tu supprimes, puis ton critère et tu supprimes.

Cordialement,

Ps : si le côté technique de la réponse = OK ou pas => pensez à cliquer sur les pouces et quand question résolue à la taguer résolue, et chaque action vous rapporte des points

Didier
__________________
Didier Gonard

Ps :
Pour noter positivement ou négativement un post, vous pouvez cliquer sur les pouces en bas à droite !
Tutoriels : Voir la liste de mes tutoriels et mon site pro sur ma Page DVP
N'oubliez pas de mettre : ..quand c'est le cas !
Ormonth est déconnecté   Envoyer un message privé Réponse avec citation 10
Vieux 16/01/2012, 16h42   #7
Membre confirmé
 
Homme Denis Morena
Technicien qualité et métrologie industrielle
Inscription : avril 2011
Messages : 115
Détails du profil
Informations personnelles :
Nom : Homme Denis Morena
Localisation : France, Gironde (Aquitaine)

Informations professionnelles :
Activité : Technicien qualité et métrologie industrielle
Secteur : Industrie

Informations forums :
Inscription : avril 2011
Messages : 115
Points : 221
Points : 221
ça prend énormément de temps ?

as tu essayé :

Code :
1
2
3
4
5
6
7
Sub VideDelete()
 
    For i = 1 To Range("A65536").End(xlUp).Row
        If Cells(i, 1).Value = "" Or Cells(i, 1).Value = "Critère" Then Rows(i & ":" & i).Delete Shift:=xlUp
    Next
 
End Sub
En remplaçant critère par ce que tu veux supprimer bien sûr...

Cordialement
White Mibu est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 16/01/2012, 16h48   #8
Membre régulier
 
Homme Guillaume Chaudemanche
Back Office Marchés
Inscription : mars 2011
Messages : 39
Détails du profil
Informations personnelles :
Nom : Homme Guillaume Chaudemanche
Localisation : France, Hauts de Seine (Île de France)

Informations professionnelles :
Activité : Back Office Marchés
Secteur : Finance

Informations forums :
Inscription : mars 2011
Messages : 39
Points : 92
Points : 92
Par défaut Pour gagner du temps

Bonjour,
@Zangaloni

Le delete est assez coûteux en temps, tu peux améliorer en insérant au début de ta procédure :

Code :
Application.ScreenUpdating = False
et en fin de procédure :

Code :
Application.ScreenUpdating = True
Pour effacer les autres lignes qui contiennent ton CRITERE, à condition qu'il soit dans la même colonne :

Code :
If Cells(i, 1).Value = "" or Cells(i,1).Value = "CRITERE" Then Rows(i & ":" & i).Delete Shift:=xlUp
Si ce n'est pas dans la même colonne, adapte le code selon les conseils de White Mibu.

Remarque @White Mibu :

Si Zangaloni n'a jamais plus d'une ligne vide qui se suit, ta solution fonctionne. Cependant, comme tu boucles sur une ensemble qui se réduit au fur et à mesure, tu sautes une ligne dès que ton programme efface une ligne à cause de La solution est de boucler à l'envers :

Code :
For i = nbligne To 1 Step -1
Ainsi tu es certain de parcourir toutes les lignes.

Mes 0.02 €

Cordialement,
Golonne est déconnecté   Envoyer un message privé Réponse avec citation 20
Vieux 16/01/2012, 17h04   #9
Membre confirmé
 
Homme Denis Morena
Technicien qualité et métrologie industrielle
Inscription : avril 2011
Messages : 115
Détails du profil
Informations personnelles :
Nom : Homme Denis Morena
Localisation : France, Gironde (Aquitaine)

Informations professionnelles :
Activité : Technicien qualité et métrologie industrielle
Secteur : Industrie

Informations forums :
Inscription : avril 2011
Messages : 115
Points : 221
Points : 221
Bonjour Golonne,

Citation:
Si Zangaloni n'a jamais plus d'une ligne vide qui se suit, ta solution fonctionne. Cependant, comme tu boucles sur une ensemble qui se réduit au fur et à mesure, tu sautes une ligne dès que ton programme efface une ligne
c'est vrai, on peut pas penser à tout

Mais c'est un bon début, et heureusement il y a du monde pour améliorer les choses
White Mibu est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 16/01/2012, 17h16   #10
Membre chevronné
 
Inscription : octobre 2006
Messages : 541
Détails du profil
Informations personnelles :
Localisation : France, Ardèche (Rhône Alpes)

Informations forums :
Inscription : octobre 2006
Messages : 541
Points : 760
Points : 760
Bonjour ) tous

question rapidité:pas besoin de boucle pour supprimer les lignes des cellules vides dans la colonne A
http://excel.developpez.com/faq/?pag...eCellLigneVide
je n'ai pas regardé pour la question du critère mais la solution par filtre proposée par Ormonth parait la + simple et rapide
__________________
Michel_M
Michel_M est déconnecté   Envoyer un message privé Réponse avec citation 10
Vieux 16/01/2012, 17h31   #11
Membre régulier
 
Homme Guillaume Chaudemanche
Back Office Marchés
Inscription : mars 2011
Messages : 39
Détails du profil
Informations personnelles :
Nom : Homme Guillaume Chaudemanche
Localisation : France, Hauts de Seine (Île de France)

Informations professionnelles :
Activité : Back Office Marchés
Secteur : Finance

Informations forums :
Inscription : mars 2011
Messages : 39
Points : 92
Points : 92
Citation:
Envoyé par Michel_M Voir le message
Bonjour ) tous

question rapidité:pas besoin de boucle pour supprimer les lignes des cellules vides dans la colonne A
http://excel.developpez.com/faq/?pag...eCellLigneVide
je n'ai pas regardé pour la question du critère mais la solution par filtre proposée par Ormonth parait la + simple et rapide
Je me coucherai moins bête ce soir !!! Merci Michel.
Golonne est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 16/01/2012, 17h54   #12
Membre habitué
 
Avatar de zangaloni
 
Étudiant
Inscription : mars 2009
Messages : 464
Détails du profil
Informations professionnelles :
Activité : Étudiant

Informations forums :
Inscription : mars 2009
Messages : 464
Points : 114
Points : 114
Merci à vous tous pour votre précieux aide
zangaloni est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 16h13.


 
 
 
 
Partenaires

Hébergement Web