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

Macro pour masquer (et afficher) lignes contenant dimanche

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 !

libellule85

XLDnaute Accro
Bonjour le forum,

Je recherche une macro pour masquer (et afficher) les lignes contenant les dimanches.

Bien sûr l'emplacement de ceux-ci changent selon les mois !

Pour info : les jours apparaissent grâce à une formule (formules données par tototiti2008, que je remercie encore)

D'avance je vous remercie pour votre aide.
 

Pièces jointes

Re : Macro pour masquer (et afficher) lignes contenant dimanche

Bonjour,

essaye ceci :
Code:
Option Explicit
Sub test()
Dim i As Long
For i = 3 To 33
    Rows(i).Hidden = Weekday(Cells(i, 1)) = 1
Next i
End Sub
Sub afficher()
Rows.Hidden = False
End Sub

bonne journée
@+
 
Re : Macro pour masquer (et afficher) lignes contenant dimanche

Bonjour Pierrot93,

Merci beaucoup pour ta réponse, cela marche très bien pour le mois d'août mais quand je change de mois il y a une erreur 13 "Incompatibilité de type", cela bug sur la ligne :

Code:
Rows(i).Hidden = Weekday(Cells(i, 1)) = 1
 
Re : Macro pour masquer (et afficher) lignes contenant dimanche

Re,

modifie comme suit :
Code:
Sub test()
Dim i As Long
For i = 3 To 33
    If IsDate(Cells(i, 1)) Then Rows(i).Hidden = Weekday(Cells(i, 1)) = 1
Next i
End Sub
 
Re : Macro pour masquer (et afficher) lignes contenant dimanche

Re,

Un grand merci cela fonctionne à merveille. Une dernière petite question comment faire pour avoir Masquer et Afficher sur le même bouton ?
 
Re : Macro pour masquer (et afficher) lignes contenant dimanche

Re,

Avec une variable "static" :

Code:
Option Explicit
Sub test()
Static b As Boolean
Dim i As Long
If b Then Rows.Hidden = False: b = False: Exit Sub
b = True
For i = 3 To 33
    If IsDate(Cells(i, 1)) Then Rows(i).Hidden = Weekday(Cells(i, 1)) = 1
Next i
End Sub
 
- 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

Discussions similaires

Réponses
3
Affichages
540
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…