Bonjour Philippe, bonjour le forum,
Essaie comme ça :
Sub Macro1()
Dim O As Worksheet 'déclare la variable O (Onglet)
Dim DC As Integer 'déclare la variable DC (Dernière Colonne)
Dim I As Integer 'déclare la variable I (Incrément)
Set O = Worksheets("Feuil1") 'définit l'onglet O (à adapter)
DC = O.Rows(1).Find("fin", , xlValues, xlWhole).Column 'définit la colonne de la cellule en ligne 1 comprotant le mot "fin"
O.Columns.Hidden = False 'affiche toutes les colonnes de l'onglet
O.Range(O.Cells(1, DC + 1), O.Cells(1, Application.Columns.Count)).EntireColumn.Hidden = True 'masque les colonnes de DC jusqu'à la dernière
For I = 1 To DC 'boucle des colonnes 1 à DC
If O.Cells(ActiveCell.Row, I).Value = "x" Then O.Columns(I).Hidden = True 'si la cellule ligne de la cellule active colonne I de la boucle contient "x", masque la colonne
Next I 'prochaine colonne de la boucle
End Sub
Après il faut que tu arrêtes, ça devient lourd...