Masquer colonnes dont la date est passée

37classeur1.xlsx (57.46 Ko)

Bonjour a tous

Je fais appel a vous car voila quelques jours que j'essaie de créer une macro qui masque les colonnes du tableur quand celles ci sont passées...

Chaque cellule d'une ligne contient la date de chaque jour de l année

La plage des dates est (O6;NP6)

La macro doit utiliser "DATE" mais je ne suis pas assez calé

En gros j'aimerai que ma macro masque les colonnes du tableur entre O6(1er janvier) et hier...

Mon fichier joint devrait etre plus parlant...

Merci d'avance pour votre aide et longue vie au forum

Bonjour,

Une première proposition.

Cdlt.

56jc-jez.xlsm (66.50 Ko)
Private Sub Workbook_Open()
Dim wb As Workbook, ws As Worksheet
Dim lCol As Double, I As Long

    Application.ScreenUpdating = False

    Set wb = ThisWorkbook
    Set ws = wb.Worksheets("2016")

    With ws
        '.Cells.EntireColumn.Hidden = False
        lCol = Application.Match(CLng(Date), .Rows(6), 0) - 1
        For I = 15 To lCol
            .Columns(I).EntireColumn.Hidden = True
        Next I
    End With

    Set ws = Nothing: Set wb = Nothing

End Sub

Bonjour,

Sub Test()
Dim NbColonnes As Integer
    Cells.EntireColumn.Hidden = False
    NbColonnes = Date - Range("O6").Value
    Range("O6").Resize(, NbColonnes).EntireColumn.Hidden = True
End Sub

A+

Merci beaucoup de votre réponse rapide

Je vais tester ça demain

Je vous tiens au courant

Bonne soirée

Rechercher des sujets similaires à "masquer colonnes date passee"