Sub affiche_janvier()
Application.ScreenUpdating = False
Dim cell As Range
Der_Cel = Cells.Find(What:="*", After:=[A1], SearchDirection:=xlPrevious).Row
For Each cell In Range(Cells(1, 1), Cells(Der_Cel, 256))
If Not Month(cell) = 1 Then cell.Columns.Hidden = True
Next
Application.ScreenUpdating = True
End Sub
Sub affiche_tout()
Cells.Columns.Hidden = False
End Sub
Private Sub Worksheet_Change(ByVal Target As Range)
If Not Target.Address(0, 0) = "E1" Then Exit Sub
Dim i As Long
Select Case Target.Value
Case "janvier"
For i = 1 To 20
If Not Cells(7, i).Value Like "JANVIER" Then
Cells(7, i).Columns.Hidden = True
End If
Next i
Case "février"
For i = 1 To 20
If Not Cells(7, i).Value Like "FÉVRIER" Then
Cells(7, i).Columns.Hidden = True
End If
Next i
Case "mars"
For i = 1 To 20
If Not Cells(7, i).Value Like "MARS" Then
Cells(7, i).Columns.Hidden = True
End If
Next i
'continuer ainsi our les autres mois
End Select
Private Sub Worksheet_Change(ByVal Target As Range)
Private Sub Worksheet_Change(ByVal Target As Range)
If Not Target.Address(0, 0) = "B1" Then Exit Sub
Dim tab_mois(12)
Dim i As Long: Dim j As Long
For j = 1 To 12
tab_mois(j) = UCase(Format(30 * j, "mmmm"))
Application.ScreenUpdating = False
Select Case Target.Value
Case LCase(tab_mois(j))
For i = 4 To 76
If Cells(2, i).Value Like tab_mois(j) Then Cells(2, i).Columns.Hidden = False
If Not Cells(2, i).Value Like tab_mois(j) Then Cells(2, i).Columns.Hidden = True
Next
Case "all"
Cells.Columns.Hidden = False
End Select
Next
Application.ScreenUpdating = True
End Sub