rimbaut
Messages postés61Date d'inscriptionjeudi 19 mai 2005StatutMembreDernière intervention 1 juin 2014
-
22 août 2008 à 00:00
rimbaut
Messages postés61Date d'inscriptionjeudi 19 mai 2005StatutMembreDernière intervention 1 juin 2014
-
22 août 2008 à 12:57
Bonsoir à tous,
J'ai un fichier dont la 1er colonne présente des références et la colonne 3 présente des quantités. Je voudrai supprimer les lignes dont les quantités sont à zéro.
Pour ce faire j'ai écrit ce code mais il ne fonctionne pas. Je pense que celà vient de la condition de la boucle car par moment dans la colonne 1 la cellule est vide. Comment puis je remédier à celà ?
Voici le code :
Sub SupprimerLigne()
Worksheets("Stockretraite").Activate
Dim y As Integer
y = 11
Do While Sheets("Stockretraite").Cells(y, 1).Value <> 0
If Sheets("Stockretraite").Cells(y, 3).Value = 0 Then
Cells(y, 1).Select
Selection.Delete Shift:=xlUp
End If
dedenet2
Messages postés372Date d'inscriptionvendredi 27 juillet 2007StatutMembreDernière intervention22 juillet 20132 22 août 2008 à 02:54
Bonsoir ,
Voici un exemple de code:
'Code VBA Excel 2000
'Supprime Ref materiel de quantite=0
Dim HautListe As Long
Dim BasListe As Long
Dim c, i
Dim nombreLigneAvec0 As Long
nombreLigneAvec0 = 0
HautListe = 11
'Detecte la derniere de la liste
BasListe = Worksheets("Stockretraite").Range("A" & HautListe).End(xlDown).Row
'tri dans l'ordre de tableau suivant colonne C
Worksheets("Stockretraite").Range("A" & HautListe & ":C" & BasListe). _
Sort Key1:=Worksheets("Stockretraite").Range("C" & HautListe), order1:=xlAscending
'Calcul le nombre de ligne a effacer
For Each c In Range("C" & HautListe & ":C" & BasListe)
If Trim(c.Value) Like "0" Then
nombreLigneAvec0 = 1 + nombreLigneAvec0
End If
Next
'Supprime les lignes
For i = 1 To nombreLigneAvec0
Sheets("Stockretraite").Rows(HautListe).Delete
Next i
'Detecte la derniere de la liste apres effacement ligne
BasListe = Worksheets("Stockretraite").Range("A" & HautListe).End(xlDown).Row
'tri ordre colonne reference
Worksheets("Stockretraite").Range("A" & HautListe & ":C" & BasListe). _
Sort Key1:=Worksheets("Stockretraite").Range("A" & HautListe), order1:=xlAscending
dedenet2
Messages postés372Date d'inscriptionvendredi 27 juillet 2007StatutMembreDernière intervention22 juillet 20132 22 août 2008 à 12:31
Salut ,
Sur nom Excel 2000 , ça fonctionne !
Quelle version as tu ?
La quantité est t'elle dans la colonne C ?
Quelle est le format des cellules dans colonne C ?
je me pose plein de question mais pour t'aider, il faut voir le code.
Peux tu envoyer ton fichier ?
A+++