Masquer des colonnes sur toutes les feuilles à la fermeture du classeur

Bonjour à tous,

Premier post pour moi, j'espère bien faire !

J'ai cherché dans le forum mais je n'ai rien trouvé qui corresponde exactement à ma demande donc je n'ai pas de solutions...

Voici ce que je souhaite faire :

Masquer les colonnes K à T de toutes les feuilles du classeur à la fermeture de ce classeur.

Le nombre de feuille est variable donc je souhaite tout sélectionner par simplification.

Merci d'avance pour votre aide...

Bonjour, à mettre dans "Thisworkbook"

Private Sub Workbook_BeforeClose(Cancel As Boolean)
Dim WS_Count As Integer
Dim I As Integer
WS_Count = ActiveWorkbook.Worksheets.Count
For I = 1 To WS_Count
Worksheets(I).Columns("K:T").Hidden = True
Next I
ThisWorkbook.Save
End Sub

Merci pour ton retour, ça fonctionne très bien !

Une autre question, si je veux complexifié :

Je souhaite masquer les colonnes de K à T à l'exception de certaines feuilles (qui elles ne seront pas variables car ces feuilles ne seront pas modifiées).

Admettons :

Feuille "Consommation" & Feuille "Achat" & Feuille "Ventes" ne doivent pas faire partie de la boucle pour masquer les colonnes K à T.

Comment faire ?

Merci d'avance, ça m'aide beaucoup !!

Rebonjour ; il suffit de tester le nom de l'onglet dans la boucle.

exemple :

Private Sub Workbook_BeforeClose(Cancel As Boolean)
Dim WS_Count As Integer
Dim I As Integer
WS_Count = ActiveWorkbook.Worksheets.Count
For I = 1 To WS_Count

If Worksheets(I).Name = "ACHATS" Or Worksheets(I).Name = "VENTES" Or Worksheets(I).Name = "CONSOMMATION" Then
GoTo suite
Else
Worksheets(I).Columns("K:T").Hidden = True
End If

suite:
Next I
ThisWorkbook.Save
End Sub

Merci beaucoup, c'est parfait !!

Rechercher des sujets similaires à "masquer colonnes toutes feuilles fermeture classeur"