VBA supprimer des ligne vide excel ;)

Résolu
lolpop Messages postés 211 Date d'inscription mercredi 4 août 2004 Statut Membre Dernière intervention 18 octobre 2010 - 20 juin 2006 à 16:05
lolpop Messages postés 211 Date d'inscription mercredi 4 août 2004 Statut Membre Dernière intervention 18 octobre 2010 - 20 juin 2006 à 18:21
rororo mais qui sais qui revient poster sur le forum, et oui c'est momo :D
je voudrai supprimer des lignes vides lorsque l'on lance un userform, j'ai fait le code suivant qui marche lorsqu'il y a une seule ligne vide d'affilé, si il y a deux ligne vide ça en supprime qu'une seul.
voila mon code :
Private Sub UserForm_Initialize()
Dim i, j As Long
i = 200
While Feuil1.Cells(i, 1) = ""
i = i - 1
Wend
MsgBox i


For j = 1 To i
If Feuil1.Cells(j, 1) = "" Then
Feuil1.Rows(j).Delete Shift:=xlUp
Else
End If
Next j
End Sub





Je comprend pourquoi ca ne marche pas mais je n'arrive pas a trouvé comment faire.
quand il y a 2 ligne vide , la premier est supprimer, et comme quand on supprime la seconde ligne vide remonte et que le j=j+1 ca passe au dessus.
si quelqu'un avais une idée :)
merci encore

5 réponses

jrivet Messages postés 7392 Date d'inscription mercredi 23 avril 2003 Statut Membre Dernière intervention 6 avril 2012 60
20 juin 2006 à 17:25
Salut,

Sinon ce que tu peux essayer c'est de commencer ta boucle par le bas comme ca tu n'auras plus le problème

for j = i to 1 Step -1

....

Next

@+, Julien
Pensez: Moteur de Recherche, Réponse Acceptée
3
lolpop Messages postés 211 Date d'inscription mercredi 4 août 2004 Statut Membre Dernière intervention 18 octobre 2010
20 juin 2006 à 18:21
merci bien a vous tous, je men sui tiré avec ceci :

j = 1
While j <= i
If Feuil1.Cells(j, 1) = "" Then
Feuil1.Rows(j).Delete Shift:=xlUp
i = i - 1
Else
j = j + 1
End If
Wend
End Sub
3
cs_bipou Messages postés 61 Date d'inscription mercredi 14 janvier 2004 Statut Membre Dernière intervention 14 septembre 2006
20 juin 2006 à 17:53
plus simple :

Range("A1:A200").SpecialCells(xlCellTypeBlanks).EntireRow.Delete
1
jrivet Messages postés 7392 Date d'inscription mercredi 23 avril 2003 Statut Membre Dernière intervention 6 avril 2012 60
20 juin 2006 à 16:39
Salut,
Exemple
Ligne 26 Vide
Ligne 27 Vide
Ligne 28 Pas Vide

Lorsque tu supprime une ligne ex 26 la ligne 27 devient la ligne 26 et la 28 la 27 donc dans ta boucle tu as déja fait la ligne 26 donc tu passes à la 27 qui alors n'est pas vide

@+, Julien
Pensez: Moteur de Recherche, Réponse Acceptée
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
lolpop Messages postés 211 Date d'inscription mercredi 4 août 2004 Statut Membre Dernière intervention 18 octobre 2010
20 juin 2006 à 17:03
oui oui j'avais compris ca :)
mais le probleme c'est que je ne sais pas coment faire pour supprimer la seconde ligne vide, j'avais penser a mettre dans le if j=j-1 m   mais ca bug et ca boucle en continue.
0
Rejoignez-nous