Bonjour,
Je voudrais ajuster un code qui permet de masquer des colonnes, je voudrais que ces colonnes soient masquées selon une date
J'ai ce code suivant qui me permet de masquer des colonnes et qui fonctionne bien :
Sub Masque1()
Dim Dc%, i%, Col%
Dc = Cells(55, Columns.Count).End(xlToLeft).Column ' 55 est la bonne ligne
Cells.EntireColumn.Hidden = False
For i = 5 To Dc ' colonne 5 est la première date
If Application.WorksheetFunction.IsoWeekNum(Cells(55, i)) = Application.WorksheetFunction.IsoWeekNum(Now) Then
Col = i - 1
Exit For
End If
Next i
Range(Columns(3), Columns(Col)).EntireColumn.Hidden = True
Columns(1).EntireColumn.Hidden = True
Columns(4).EntireColumn.Hidden = False
End Sub
Je voudrais que l'utilisateur saisisse une date dans une boite INPUT (comme noté en début du code ci-dessous) et que les colonnes des dates inférieures à la date noté soient masquées. Les dates sont affichées à la ligne 55
Sub Masque1()
Dim Dc%, i%, Col%
Dc = Cells(55, Columns.Count).End(xlToLeft).Column ' 55 est la bonne ligne
Dim DateDebut As String
DateDebut = InputBox("Saisissez la 1ère date à afficher svp : ")
Cells.EntireColumn.Hidden = False
For i = 5 To Dc ' colonne 5 est la première date
If Application.WorksheetFunction.IsoWeekNum(Cells(55, i)) = Application.WorksheetFunction.IsoWeekNum(Now) Then
Col = i - 1
Exit For
End If
Next i
Range(Columns(3), Columns(Col)).EntireColumn.Hidden = True
Columns(1).EntireColumn.Hidden = True
Columns(4).EntireColumn.Hidden = False
End Sub
Pourriez-vous m'aider svp ?
Je vous remrercie beaucoup
Codialement