Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

[RESOLU] code masquer demasquer ligne tres lent à l'execution

  • Initiateur de la discussion Initiateur de la discussion charbsou
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

C

charbsou

Guest
bonjour

voila le code qui me permet de masquer et demasquer des lignes d'un tableau a deux colonnes grace a un bouton mis sur la feuille concerne.

Sub Bouton14_Cliquer()

Application.ScreenUpdating = False

On Error Resume Next
With ActiveSheet.Shapes(Application.Caller).TextFrame.Characters
If .Text = "Masquer" Then
.Text = "Démasquer"

Range("c10:c459").SpecialCells(xlCellTypeBlanks).EntireRow.Hidden = True

Else

.Text = "Masquer"
For Each Cel In Range("C10:C459")
Rows(Cel.Row).Hidden = False

Next Cel

End If
End With
End Sub


lorsque je clic sur le bouton, les 450 lignes du tableau don l'une des cellules est vide se masquent en 0.5 sec mais lorsque je clic sur le meme bouton pour les demasquer, cela doit bien prendre 4 sec.

est ce qu'il serai possible d'aller plus vite ?

merci et bonne journee
 
Dernière modification par un modérateur:
Re : code masquer demasquer ligne tres lent à l'execution

Bonjour,

plutôt que la boucle, pourquoi ne pas utiliser tout simplement :
Code:
Range("c10:c459").EntireRow.Hidden = False

bonne journée
@+
 
Re : code masquer demasquer ligne tres lent à l'execution

heuuuu lol une boucle ?? j'ai pas encore integre et encore moins compris tout les concept du vba en fait tres peu .... je prend des codes sur les forums que j'adapte sans forcement bien les comprendre à mon projet meme si il m'arrive de trouver de petites choses tout seul.

pour ce qui est de votre proposition, il faut que je remplace dans mon code

For Each Cel In Range("C10:C459")
Rows(Cel.Row).Hidden = False

Next Cel

par votre ligne
Range("c10:c459").EntireRow.Hidden = False

c'etait bien ça ?

en tout cas si c'est ça, ça marche parfaitement merci beaucoup
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD
Assurez vous de marquer un message comme solution pour une meilleure transparence.

Discussions similaires

  • Question Question
XL 2019 Code VBA
Réponses
12
Affichages
891
V
Réponses
17
Affichages
3 K
VBgalère
V
C
Réponses
6
Affichages
2 K
C
Y
Réponses
6
Affichages
1 K
Y
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…