Bonjour,
J'ai un planning annuel linéaire horizontal. J'ai mis en place une formule qui afficher et masquer les colonnes selon une date dans une cellule.
Seulement, je trouve la macro très longue.
Voici mon code:
Private Sub Worksheet_Change(ByVal Target As Range)
If Not Application.Intersect(Target, Range("M7")) Is Nothing Then
Dim i As Integer
For i = 17 To 400
If Cells(8, i) < Cells(7, 13) Then
Cells(8, i).EntireColumn.Hidden = True
Else
Cells(8, i).EntireColumn.Hidden = False
End If
Next i
End If
End Sub
Je souhaiterais pouvoir l'améliorer mais je n'y arrive pas. Je pense notamment à la fonction find sur la plage.
Je vous mets, également le fichier que j'utilise pour faire des essais.
Dans l'attente,
Merci
J'ai un planning annuel linéaire horizontal. J'ai mis en place une formule qui afficher et masquer les colonnes selon une date dans une cellule.
Seulement, je trouve la macro très longue.
Voici mon code:
Private Sub Worksheet_Change(ByVal Target As Range)
If Not Application.Intersect(Target, Range("M7")) Is Nothing Then
Dim i As Integer
For i = 17 To 400
If Cells(8, i) < Cells(7, 13) Then
Cells(8, i).EntireColumn.Hidden = True
Else
Cells(8, i).EntireColumn.Hidden = False
End If
Next i
End If
End Sub
Je souhaiterais pouvoir l'améliorer mais je n'y arrive pas. Je pense notamment à la fonction find sur la plage.
Je vous mets, également le fichier que j'utilise pour faire des essais.
Dans l'attente,
Merci
Pièces jointes
Dernière modification par un modérateur: