Problème incompréhensible "for each cell".. row.delete. ! à l'aide!

Tonino7

XLDnaute Occasionnel
Bonjour à tous,

je m'arrache les cheveux depuis hier sur un problème INCOMPREHENSIBLE :

(ci-joint mon fichier : Free - Envoyez vos documents )

dans mon fichier, j'ai prévu une macro ("globalupdate") qui, pour résumer, me supprime toutes les lignes de l'onglet "P&L" (et l'onglet "BS" mais en l'occurence il est vide) dans lesquelles il y a un numéro de compte, et va ensuite recréer ces comptes un à un (donc réinsérer les lignes supprimées) en se basant sur la base de données de l'onglet "COA".

Voici le code principal utilisé pour la suppression des lignes où il y a des numéros de comptes :

Sub globalupdate()


Sheets("P&L").Select

For Each cell In Range("PLsize")
Line = cell.Row - 2

If cell.Value > 1 Then

NBdel = cell.Value - 1
cell.Value = 1

For N = 1 To NBdel


Sheets("P&L").Row(Line & ":" & Line).delete shift:=xlUp
Line = Line - 1
Next N
End If

Next cell
....


CONSTAT : tout se déroule à merveille, sauf pour quelques lignes impossibles à supprimer (comme la ligne 33 : compte 500103)

Je ne comprend absolument pas pourquoi cela ne marche pas pour certains comptes. J'ai tout vérifier des dizaines de fois.


Et j'ai recréer une macro quasiment -similaire, dans laquelle, je ne demande pas de supprimer des lignes, mais de les colorier en Jaune --> et bien, cela fonctionne partout. (vous pouvez tester cette macro en cliquant sur le bouton 346 (ou éxécuter macro "testu").

Cela est donc incompréhensible.


JE VOUS DEMANDE DE L'AIDE ! Merci par avance
 

Discussions similaires

Réponses
7
Affichages
521
Réponses
9
Affichages
876

Statistiques des forums

Discussions
312 177
Messages
2 085 972
Membres
103 073
dernier inscrit
MSCHOE16