Suppression ligne n si valeur de "B" & n = o

Bonjour,

voilà je pense être proche de la solution,

je veux que la macro supprime les lignes pour lesquelles la colonne B a la valeur 0.

Merci d'avance ,

Sylvain

J'ai mis un bouton qui permet de supprimer les lignes avec un 0 en colonne B.

Merci, mais tout d'abord je pense qu'il faut ="0" en fait dans la condition et en fait le probleme c'est que le fichier complet rempli les 65536 ligne d'excell et que faire tourner le code ne supprime qu'un nombre prédéfini de ligne avec O en sur la colonne B.

même en donnant comme dimension à n : LONG au lieu de INTEGER

Comment faire pour etre sur que toutes lignes de 0 a 65500 soit supprimées au cas ou il y ait un 0 dans la colonne B sur par exemple 2000 cellules ?

Merciiiii

Sylvain

Ma condition à un 0. Chez moi ça supprime bien les ligne avec un 0.

Apres si ta colonne A est toujours rempli quand il y a des nombres dans la colonne B alors met une conditions la dessus pour que ca s’arrête a la derniers cellule pleine en colonne A ou B d’ailleurs.


Et avec ça est ce que ça va mieux. Chez moi ça marche bien.

Private Sub CommandButton1_Click()

Dim J As Integer

For J = 1 To Sheets("test").Range("A" & Rows.Count).End(xlUp).Row

If Sheets("test").Range("B" & J) = "0" Then

Sheets("test").Range("B" & J).EntireRow.Delete

End If

Next

End Sub

Oui ca marche merci, le problème c'est que tu peux essayer de mettre une trentaine de 0 dans des cellules de la colonne B , tu lance la macro, en fait ca va pas tout supprimer ....

comment je peux regler ca?

merci en tout cas pour la formule avant

Sylvain

J'avais pas fait gaffe qu'il y avait plusieurs 0 à la suite!!

Maintenant ça devrait être bon la :

Private Sub CommandButton1_Click()

Dim J As Integer

For J = 1 To Sheets("test").Range("A" & Rows.Count).End(xlUp).Row

While Sheets("test").Range("B" & J) = "0"

Sheets("test").Range("B" & J).EntireRow.Select

Selection.Delete shift:=xlUp

Wend

Next

End Sub

toujours pas en fait :-s mais bon c'est pas grave j'ai juste fait copier coller plusieur fois la boucle pour que excell fasse vrmt son taf.

C'est trop de la merdouille excell, quand y a trop de donné il veut plus bref...

merci d'avoir regarder

cordialement

Sylvain

Bonjour

Dans le cas de suppression il faut (pas une obligation - mais plus simple) commencer à la fin

Essayes

Sub Suppression()
Dim J As Long

  For J = Range("A" & Rows.Count).End(xlUp).Row To 1 Step -1
    If Range("B" & J) = 0 Then Rows(J).Delete
  Next J

End Sub
Rechercher des sujets similaires à "suppression ligne valeur"