Problème de clignottement et de lenteur

Problème de clignottement et de lenteur - VB/VBA/VBS - Programmation

Marsh Posté le 28-07-2005 à 15:09:59    

Bonjour,
 
lorsque j'utilise la boucle suivante pour cacher ou afficher des lignes excel
la feuille entière clignotte, et c'est très lent.
 
   

Code :
  1. Do While (familyIndexCol.Cells(rIndex, col).Value = fIndex)
  2.         If (familyIndexCol.Cells(rIndex, col).EntireRow.Hidden = False) Then
  3.             familyIndexCol.Cells(rIndex, col).EntireRow.Hidden = True
  4.         Else
  5.             familyIndexCol.Cells(rIndex, col).EntireRow.Hidden = False
  6.         End If
  7.           rIndex = rIndex + 1
  8.     Loop


 
Connaissez-vous un moyen de corriger cela? Est-ce qu'il y a quelque chose qui cloche là dedans?
Merci d'avance
 

Reply

Marsh Posté le 28-07-2005 à 15:09:59   

Reply

Marsh Posté le 28-07-2005 à 15:14:26    

Oui quand je dis "très lent" c'est très lent: pratiquement 1 ligne/s grrrr
 

Reply

Marsh Posté le 28-07-2005 à 15:18:48    

je propose

Code :
  1. Do While (familyIndexCol.Cells(rIndex, col).Value = fIndex)
  2.         familyIndexCol.Cells(rIndex, col).EntireRow.Hidden = familyIndexCol.Cells(rIndex, col).EntireRow.Hidden
  3.           rIndex = rIndex + 1
  4.     Loop

Reply

Marsh Posté le 28-07-2005 à 15:28:52    

Heu, j'ai pas compris par quel mystère se ferait le basculement de hidden = true à hidden = false, mais j'ai quand même essayé :) ça donne évidemment pas grand chose ;)
mais ça clignotte quand même .....

Reply

Marsh Posté le 28-07-2005 à 15:39:44    

a oui j'ai compris, il manquait le Not après le =  
mais bon, c'est pareil c'est très lent ...
merci quand même

Reply

Marsh Posté le 28-07-2005 à 15:56:59    

Mon collègue m'a suggéré la bonne méthode, sélectionner l'ensemble des lignes et appliquer la méthode hidden dessus.
 
Ca y est ça marche, youpi...

Reply

Marsh Posté le 28-07-2005 à 15:58:41    

Pedro-1 a écrit :

Mon collègue m'a suggéré la bonne méthode, sélectionner l'ensemble des lignes et appliquer la méthode hidden dessus.
 
Ca y est ça marche, youpi...


bravo, tu peux mettre resolu sur ton sujet :p

Reply

Sujets relatifs:

Leave a Replay

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