Bonjour à tous les as d'excel !
Avec l'aide de ce forum, j'ai fait une petite macro qui cache ou qui affiche des lignes en fonction du contenu des cellules de la colonne R.
Voici la macro:
Private Sub ToggleButton1_Click()
Dim cell As Range
Dim maplage As Range
If ToggleButton1 = True Then
ToggleButton1.Caption = "Masquer lignes vides"
ActiveSheet.Rows.Hidden = False
Else
ToggleButton1.Caption = "Afficher tout"
Set maplage = Feuil2.Range("R1:R7416")
For Each cell In maplage
If cell.Value = 0 Then cell.EntireRow.Hidden = True
Next
End If
End Sub
Tout marche comme je veux mais je souhaiterais l'améliorer.
1) y a -t-il moyen d'éviter le raffaraîchissement de l'écran pendant l'opération de masquages des lignes. Cela donne un effet de vague assez "laid" et remplacer cela par un message du style "Masquage des lignes en cours" et le faire disparaître quand c'est terminé.
2) quand la macro est terminée, on ne le voit pas et il faut cliquer dans une cellule pour récupérer le curseur et la main ! Y'a-t-il moyen que cette opération se fasse automatiquement à la fin de la macro ?
D'avance merci pour l'aide
Jean
Avec l'aide de ce forum, j'ai fait une petite macro qui cache ou qui affiche des lignes en fonction du contenu des cellules de la colonne R.
Voici la macro:
Private Sub ToggleButton1_Click()
Dim cell As Range
Dim maplage As Range
If ToggleButton1 = True Then
ToggleButton1.Caption = "Masquer lignes vides"
ActiveSheet.Rows.Hidden = False
Else
ToggleButton1.Caption = "Afficher tout"
Set maplage = Feuil2.Range("R1:R7416")
For Each cell In maplage
If cell.Value = 0 Then cell.EntireRow.Hidden = True
Next
End If
End Sub
Tout marche comme je veux mais je souhaiterais l'améliorer.
1) y a -t-il moyen d'éviter le raffaraîchissement de l'écran pendant l'opération de masquages des lignes. Cela donne un effet de vague assez "laid" et remplacer cela par un message du style "Masquage des lignes en cours" et le faire disparaître quand c'est terminé.
2) quand la macro est terminée, on ne le voit pas et il faut cliquer dans une cellule pour récupérer le curseur et la main ! Y'a-t-il moyen que cette opération se fasse automatiquement à la fin de la macro ?
D'avance merci pour l'aide
Jean