Tom's Guide > Forum > Programmation > Supprimer lignes vide avec VBA!!!!
Mot :    Pseudo :           
 

Bonjour,

ALors voilà je suis extremement debutant en "programmation" et j'ai juste un petit soucis avec vba et donc je viens demander un petit coup de main.
J'ai sur une feuille excel, plusieurs milliers de lignes de" données avec plusieurs colonnes, et entre ces lignes j'ai quelques lignes vides qui a vrai dire me derangent pour executer des macros sur toutes mes données. Donc plutot que de les supprimer une par une, ce qui est long et tres chiant surout quand on a plus d'un million de lignes de données a traiter, je souhaite juste faire une petite macro toute bete, mais pour le moment ca ne marche pas.

voila ce que j'ai fait :

Sub supprimer_lignes_vides()

x = ActiveCell.Row

Do While Cells(x, 2).Value <> ""

If Cells(x, 2).Value = 0 Then
Cells(x, 2).EntireRow.Delete
Else: x = x + 1
End If

Loop
x = x + 1


End Sub


En fait ce qui pose probleme je pense, c'est "If Cells(x, 2).Value = 0", car je crois pas qu'on definisse une cellule vide par 0. Autrement le reste est correct normalement.

J'espere avoir été clair, et merci d'avance pour l'aide que j'aurais.

Liens sponsorisés
Inscrivez-vous ou connectez-vous pour masquer ceci.

Salut, Husker

Le plus simple, c'est de sélectionner toute ta plage de données et de faire un tri sur la deuxième colonne: toutes les lignes où cette colonne est vide se mettront à la fin.
Sinon, il existe aussi les fonctions IsNull() et IsEmpty() pour vérifier si une valeur est nulle ou vide (à tester).

Bonne continuation


Message édité par gillou_gre le 26-11-2007 à 18:14:54
Répondre à gillou_gre

Merci gillou_gre, mais j'avais déjà résolu le problème, en utilisant effectivement la fonction IsEmpty().

Répondre à husker
Tom's Guide > Forum > Programmation > Supprimer lignes vide avec VBA!!!!
Aller à :

Il y a 271 utilisateurs connus et inconnus. Pour voir la liste des connectés connus, cliquez ici.

Attention

Vous allez répondre sur un sujet resté inactif pendant plus de 6 mois.
Assurez-vous d'apporter des éléments nouveaux à la discussion avant de poursuivre.

Répondre Annuler
Liens