Supprimer des lignes

  • Initiateur de la discussion Jean
  • Date de début
J

Jean

Guest
Bonsoir le forum,

Je dispose de ce code VBA (communiqué par Yeahou ou Ti il me semble) qui me permet de supprimer toutes les lignes contenant une erreur de formule.
Toutefois, je suis obligé de cliquer plusieurs fois pour supprimer toutes les lignes. Quelque chose doit coincer, mais quoi ?
Peut-on supprimer les lignes d'un seul clic ?

Sub sup()
Set feuille = ThisWorkbook.Sheets("Feuil1")
Set maplage = feuille.UsedRange
For Each I In maplage
If IsError(I) = True Then
I.EntireRow.Delete
End If
Next

End Sub

Merci.
 
Z

Zon

Guest
Salut,

C'est normal en supprimant des lignes entières cela doit recréer des erreurs dans les formules. Peut être comme ceci


Sub sup()
dim Feuille as worksheet,Maplage as range,I as range 'Option explicit
Set feuille = ThisWorkbook.Sheets("Feuil1")
on error resume next
while err=0
Set maplage = feuille.UsedRange.specialcells(xlcelltypeformulas)
For Each I In maplage
If IsError(I) = True Then
I.EntireRow.Delete
End If
Next i
wend
end sub

A+++
 
J

Jean

Guest
Bonjour Zon et le forum,

Merci Zon de ta réponse et désolé pour ma réponse tardive.
J'étais en déplacement.

J'ai testé ta macro et elle marche très bien, les lignes sont supprimées d'un coup, mais la macro se bloque après que les lignes soient supprimées.

Je n'arrive pas à comprendre ce qu'il se passe ?


Merci.
 
Z

Zon

Guest
Re,

Je te disais ceci sans vraiment de conviction car j'ai rien pour tester(les formules barbares c pas mon truc..), Envoies ton fichier par courriel pour voir ce qui cloche, certainement la boucle...
Mais la meilleure solution c'est d"éviter la macro, en prenant le pb au départ les erreurs dans tes formules ??.

A+++
 

Discussions similaires

Réponses
6
Affichages
169
Réponses
7
Affichages
407

Membres actuellement en ligne

Statistiques des forums

Discussions
312 493
Messages
2 088 956
Membres
103 990
dernier inscrit
lamiadebz