problème dans une boucle (masquer les lignes vides)

problème dans une boucle (masquer les lignes vides) - VB/VBA/VBS - Programmation

Marsh Posté le 26-03-2010 à 21:11:13    

Hello,
J'ai un tableau Excel qui va de la ligne 10 à la ligne 279.
Certaines cellules sont vides, et dans ce cas là, la ligne correspondante doit être masquée.
 
Comme tout est mélangé, j'ai écrit un script qui vérifie si la cellule de colonne C (ligne 10 à 279) est vide.
Si c'est le cas, on fixe la hauteur de ligne à 0 pour la masquer.
 
 
Ca marchait bien tant que mon tableau allait jusque la ligne 179 ... mais depuis que je l'ai agrandi, ça plante.
Ca semble être une histoire d'itérations de la boucle, mais curieusement, c'est assez aléatoire quant au nombre de lignes problématique (parfois 200, parfois 250, ça dépend !!!)
Plus drôle, quand je crée un fichier plus léger pour tester, et que je colle la macro, ça marche ...
 
Une idée pour programmer ça autrement ?
 

Code :
  1. Sub masque_ligne()
  2. Application.ScreenUpdating = False
  3. Application.Calculation = xlManual
  4. Range(Cells(10, 3), Cells(100, 3)).Select
  5. For Each c In Selection.Cells
  6.     If c.Value = 0 Then
  7.         c.RowHeight = 0
  8.     End If
  9. Next c
  10. Application.Calculation = xlCalculationAutomatic
  11. Range("J4" ).Select
  12. End Sub


Message édité par F22Raptor le 26-03-2010 à 21:23:33

---------------
Is it a bird? Is it a plane? No it s F22Raptor !  -  I love flying because football, baseball, rugby, and golf only take one ball
Reply

Marsh Posté le 26-03-2010 à 21:11:13   

Reply

Marsh Posté le 26-03-2010 à 21:33:04    

Bon, je crois avoir trouvé : je laisse le sujet actif pour aider ceux qui auraient le même problème.
 
Donc, j'avais aussi des commentaires dans des cellules contigües.
En effaçant les commentaires, ça va déjà mieux !
 


---------------
Is it a bird? Is it a plane? No it s F22Raptor !  -  I love flying because football, baseball, rugby, and golf only take one ball
Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed