Supprimer des lignes en fonction de la valeur d'une cellule

Bonjour,

Je souhaite supprimer des lignes en fonction de la valeur d'une cellule sur cette ligne.

J'utilise le code suivant :

Sub select623()

Dim DerLig As Long

Dim ligne As Long

Const Code = 291

Application.ScreenUpdating = False

If Worksheets(6).Range("A2") <> "" Then

With Worksheets(6)

DerLig = .Range("A" & Rows.Count).End(xlUp).Row

For ligne = DerLig To 2 Step -1

If UCase(.Cells(ligne, Code)) > 5 Then

.Rows(ligne).Delete

End If

Next ligne

End With

Else

Exit Sub

End If

End Sub

ce code fonctionne de temps en temps mais pas tout le temps.

J'ai alors le message suivant :

"Excel ne peut pas terminer cette tâche avec les ressources disponibles.

Sélectionnez moins de données ou fermez des applications."

Comment puis-je faire pour éviter ce problème ?

Merci d'avance pour vos conseils.

Anthony

Bonjour

Cette ligne de code m'interpelle :

If UCase(.Cells(ligne, Code)) > 5

Tu veux examiner la valeur mise en majuscule de la cellule qui est à la ligne "ligne" et à la colonne "Code".

Il s'agit donc d'une valeur en texte.

Or tu la compares à une valeur numérique : 5

La macro ne doit pas bien comprendre ; et moi non plus !

Bye !

Rechercher des sujets similaires à "supprimer lignes fonction valeur"