Masquer des colonnes en fonction de la date du jour
Résolu
pinkbaby91
Messages postés
23
Statut
Membre
-
pinkbaby91 Messages postés 23 Statut Membre -
pinkbaby91 Messages postés 23 Statut Membre -
Bonjour à tous,
j'ai un fichier excel avec tableau qui distingue des trimestres
Ainsi, j'aimerai que, selon la date à laquelle j'ouvre mon fichier, les colonnes qui ne correspondent pas au trimestre en cours soient masquées.
Si je suis au premier trimestre de l'année, les colonnes des trimestre 2 3 et 4 se masquent, et ainsi de suite.
Est ce que quelqu'un pourrai m'aider?
Je l'espere en tout cas...
Merci d'avance!
A.
j'ai un fichier excel avec tableau qui distingue des trimestres
Ainsi, j'aimerai que, selon la date à laquelle j'ouvre mon fichier, les colonnes qui ne correspondent pas au trimestre en cours soient masquées.
Si je suis au premier trimestre de l'année, les colonnes des trimestre 2 3 et 4 se masquent, et ainsi de suite.
Est ce que quelqu'un pourrai m'aider?
Je l'espere en tout cas...
Merci d'avance!
A.
A voir également:
- Masquer des colonnes en fonction de la date du jour
- Fonction si et - Guide
- Comment faire des colonnes sur word - Guide
- Formule moyenne excel plusieurs colonnes - Guide
- Classer par ordre alphabétique excel plusieurs colonnes - Guide
- Mise a jour chrome - Accueil - Applications & Logiciels
6 réponses
A mettre dans ThisWorkBook:
Option Explicit
Private Sub Workbook_Open()
Sheets("Feuil1").Select ' a adapter
Columns("A:L").Select
Selection.EntireColumn.Hidden = True
Trimestre (Now)
End Sub
Function Trimestre(MyDate As Date) As Integer
Select Case Month(MyDate)
Case 1, 2, 3
Trimestre = 1
Columns("A:C").Select
Selection.EntireColumn.Hidden = False
Case 4, 5, 6
Trimestre = 2
Columns("D:F").Select
Selection.EntireColumn.Hidden = False
Case 7, 8, 9
Trimestre = 3
Columns("G:i").Select
Selection.EntireColumn.Hidden = False
Case 10, 11, 12
Trimestre = 4
Columns("J:L").Select
Selection.EntireColumn.Hidden = False
End Select
End Function
Bonjour,
En vba. Faire Alt F11 pour accéder à l'éditeur.
Cliquez sur ThisWorkBook en haut à gauche et mettre ce code:
Ensuite vous enregistrez classeur avec macro
En vba. Faire Alt F11 pour accéder à l'éditeur.
Cliquez sur ThisWorkBook en haut à gauche et mettre ce code:
Option Explicit
Dim monmois As String
Private Sub Workbook_Open()
Sheets(Format(Now, "mmmm")).Select 'selection mois en cours
monmois = Format(Now, "mmmm") 'mois en cours
Dim I As Integer
For I = 1 To Sheets.Count
If Sheets(I).Name = monmois Then
Worksheets(I).Visible = True
Else
Worksheets(I).Visible = xlSheetHidden 'on cache les onglets
End If
Next I
Trimestre (Now)
End Sub
Function Trimestre(MyDate As Date) As Integer
Select Case Month(MyDate)
Case 1, 2, 3
Trimestre = 1
Worksheets(1).Visible = True
Worksheets(2).Visible = True
Worksheets(3).Visible = True
Case 4, 5, 6
Trimestre = 2
Worksheets(4).Visible = True
Worksheets(5).Visible = True
Worksheets(6).Visible = True
Case 7, 8, 9
Trimestre = 3
Worksheets(7).Visible = True
Worksheets(8).Visible = True
Worksheets(9).Visible = True
Case 10, 11, 12
Trimestre = 4
Worksheets(10).Visible = True
Worksheets(11).Visible = True
Worksheets(12).Visible = True
End Select
End Function
Ensuite vous enregistrez classeur avec macro
Mais pour celui là c'est bien des onglets?
https://forums.commentcamarche.net/forum/affich-32766855-masquer-des-onglets-selon-la-date-d-ouverture-du-fichier#p32767595
https://forums.commentcamarche.net/forum/affich-32766855-masquer-des-onglets-selon-la-date-d-ouverture-du-fichier#p32767595
pour les onglets, ca me dit que l'indice n'appartient pas à la selection. je suis vraiment mauvaise en programmation. je ne comprends pas le debut du programme
Dim monmois As String
Private Sub Workbook_Open()
Sheets(Format(Now, "mmmm")).Select 'selection mois en cours
monmois = Format(Now, "mmmm") 'mois en cours
Dim I As Integer
For I = 1 To Sheets.Count
If Sheets(I).Name = monmois Then
Worksheets(I).Visible = True
Else
Worksheets(I).Visible = xlSheetHidden 'on cache les onglets
End If
Next I
j'ai tres certainement des choses à modifier dans cette partie pour que cela fonctionne avec mon fichier, mais à dire vrai, je ne sais pas quoi...
Dim monmois As String
Private Sub Workbook_Open()
Sheets(Format(Now, "mmmm")).Select 'selection mois en cours
monmois = Format(Now, "mmmm") 'mois en cours
Dim I As Integer
For I = 1 To Sheets.Count
If Sheets(I).Name = monmois Then
Worksheets(I).Visible = True
Else
Worksheets(I).Visible = xlSheetHidden 'on cache les onglets
End If
Next I
j'ai tres certainement des choses à modifier dans cette partie pour que cela fonctionne avec mon fichier, mais à dire vrai, je ne sais pas quoi...
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
merci infiniment!!