Suppression de ligne avec une macro

ninajams -  
 ninajams -
Bonjour,

Désolé de vous embêter mais j'ai pas réussis a me débrouillé avec ce que j'ai trouver donc je pose ma petite question :

Sur une feuille j'ai recopier une formule dans la colonne H a partir le l'étiquette de colonne soit H2=SI(ET(F2>0;G2<(MAINTENANT()+'mode d''emploi'!$D$20));"CONTROLER";"")

Donc valeur vrai = contrôler et faux= vide.

Je souhaite supprimer toute les lignes Dont la case H est vide.
Concrètement je souhaite juste garder les lignes à contrôler.

Je pense devoir utiliser If then mais comme je l'ai jamais utiliser.....

Si vous pouviez me donnée des codes ca m'arrangerait et si en plus vous aviez la gentillesse de le commenter ca me ferais progresser

cordialement

Mickael
A voir également:

3 réponses

Pawn
 
Salut,

Essaye :

Sub SupprLine()

Sheets("Feuil1").Activate

Range("H1").Select

For i = 1 To 10

If Range("H" & i) = Empty Then

Range(Cells(i, 8), Cells(i, 256)).Select
Selection.Delete Shift:=xlUp
End If
Next i

End Sub
0
Pawn
 
Pour info,

For I = Ligne de début to Ligne de Fin

La dernière ligne en H peut-elle variée ?
0
Pawn
 
Petite correction (manque d'attention de ma part),

Range(Cells(i, 1), Cells(i, 256)).Select
au lieu de Range(Cells(i, 8), Cells(i, 256)).Select
0
ninajams@msn.com
 
Salut,

Merci d'avoir répondu !!!!

Effectivement le nombre de ligne est variable. (au alentour de 4000)
Par contre le code me supprime pas toute les lignes puisque quand une ligne est supprimé celle du dessous prend sa place et la macro vas a la ligne suivante donc ça rate presque 1 ligne sur 2.

J'ai essayer de bidouillé ton code pour l'adapter mais j'ai pas réussi. sniff

cordialement
0
ninajams
 
salut,

Dim i As Integer
For i = Range("a65536").End(xlUp).Row To 2 Step -1
If Cells(i, 8) = "" Then
Rows(i).Delete
End If
Next i

Voila le code que j'utilise et il fonctionne juste un peu long mais sa fonctionne très bien.

Cordialement
mickael
0