Bonsoir,
Une piste de début, à mettre dans le module du classeur (ThisWorkbook) :
Private Sub Workbook_SheetActivate(ByVal Sh As Object)
Dim Tbl()
Dim I As Integer
'à l'activation de la feuille "feuil2"
If Sh.Name = "Feuil2" Then
'crée un tableau à deux dimensions, une pour les dates
'et une pour les colonnes devant être cachées ou affichées
ReDim Tbl(1 To 2, 1 To 5)
Tbl(1, 1) = "10/12/2011"
Tbl(2, 1) = "B:B"
Tbl(1, 2) = "15/12/2011"
Tbl(2, 2) = "C:C"
Tbl(1, 3) = "22/12/2011"
Tbl(2, 3) = "D:D"
Tbl(1, 4) = "23/12/2011"
Tbl(2, 4) = "E:E"
Tbl(1, 5) = "24/12/2011"
Tbl(2, 5) = "F:F"
'parcour le tableau et cache la ou les colonnes
'dont la date entrée dans le tableau est égale
'à la date du jour
For I = 1 To UBound(Tbl, 2)
If CDate(Tbl(1, I)) = Date Then
Columns(Tbl(2, I)).EntireColumn.Hidden = True
Else
Columns(Tbl(2, I)).EntireColumn.Hidden = False
End If
Next I
End If
End Sub
Hervé.