Afficher des onglets en fonction de deux dates

CHRISTOPHEAGPM

XLDnaute Nouveau
Bonjour à tous,

L'année dernière, en prévision de mon activité de cette année j'avais, avec votre aide, construit un tableau me permettant de suivre une activité au mois le mois.

https://www.excel-downloads.com/threads/masquer-onglets-en-fonction-de-la-date-du-jour.129528/

Tout les 1er du mois l'onglet correspondant au mois passé disparaissait et celui correspondant au mois précédent apparaissait. l'objectif étant de n'adresser aux utilisateur qu'un seul fichier pour l'année.

Aujourd'hui nous sommes le 1er fevrier et cela fonctionne parfaitement, trop parfaitement... certains de ces utilisateurs ont des modifications à effectuer sur l'onglet correspondant au mois de janvier mais n'y ont plus accès:(

Je pensais pouvoir modifier le code utilisé mais je n'y parviens pas. peut-etre que l'un d'entre vous pourra m'aider. l'objectif est de laisser le mois N-1 actif quelques jours apres la fin du mois (la periode "d'ouverture" étant entrée dans l'onglet données)

Je vous joins un exemple et les quelques modif "artisanales" que j'ai essayé d'y apporter.

Merci beaucoup pour votre aide.
 

Pièces jointes

  • onglets dates.zip
    15.9 KB · Affichages: 33
  • onglets dates.zip
    15.9 KB · Affichages: 29
  • onglets dates.zip
    15.9 KB · Affichages: 35
Dernière édition:

CHRISTOPHEAGPM

XLDnaute Nouveau
Re : Afficher des onglets en fonction de deux dates

Bonsoir à tous,

J'avance, doucement mais j'avance:)

Enfin un debut de solution qui fonctionne, les dates sont rentrées dans la macro et ne font pas référence au tableau de l'onglet "données" mais pour un an c'est suffisant.

le fichier en Pj.

Bonne nuit

Private Sub workbook_open()
Dim mydate
mydate = Date

If Date > ("01/01/2010") And Date < ("05/02/2010") Then
Sheets("Production (1)").Visible = True
Else
Sheets("Production (1)").Visible = False
End If

If Date > ("01/02/2010") And Date < ("05/03/2010") Then
Sheets("Production (2)").Visible = True
Else
Sheets("Production (2)").Visible = False
End If

If Date > ("1/03/2010") And Date < ("5/04/2010") Then
Sheets("Production (3)").Visible = True
Else
Sheets("Production (3)").Visible = False
End If

If Date > ("1/04/2010") And Date < ("5/05/2010") Then
Sheets("Production (4)").Visible = True
Else
Sheets("Production (4)").Visible = False
End If

If Date > ("1/05/2010") And Date < ("5/06/2010") Then
Sheets("Production (5)").Visible = True
Else
Sheets("Production (5)").Visible = False
End If

If Date > ("1/06/2010") And Date < ("5/07/2010") Then
Sheets("Production (6)").Visible = True
Else
Sheets("Production (6)").Visible = False
End If

If Date > ("1/07/2010") And Date < ("5/08/2010") Then
Sheets("Production (7)").Visible = True
Else
Sheets("Production (7)").Visible = False
End If

If Date > ("1/08/2010") And Date < ("5/09/2010") Then
Sheets("Production (8)").Visible = True
Else
Sheets("Production (8)").Visible = False
End If

If Date > ("1/09/2010") And Date < ("5/10/2010") Then
Sheets("Production (9)").Visible = True
Else
Sheets("Production (9)").Visible = False
End If

If Date > ("1/10/2010") And Date < ("5/11/2010") Then
Sheets("Production (10)").Visible = True
Else
Sheets("Production (10)").Visible = False
End If

If Date > ("1/11/2010") And Date < ("5/12/2010") Then
Sheets("Production (11)").Visible = True
Else
Sheets("Production (11)").Visible = False
End If

If Date > ("1/12/2010") And Date < ("10/12/2011") Then
Sheets("Production (12)").Visible = True
Else
Sheets("Production (12)").Visible = False
End If

End Sub
 

Pièces jointes

  • onglets dates.zip
    13.6 KB · Affichages: 17
  • onglets dates.zip
    13.6 KB · Affichages: 16
  • onglets dates.zip
    13.6 KB · Affichages: 15

Discussions similaires

Statistiques des forums

Discussions
312 469
Messages
2 088 688
Membres
103 920
dernier inscrit
jean claude