OVH Cloud OVH Cloud

Application d'une macro à toute feuille visible

1 réponse
Avatar
Stéphan DuQuébec
Bonjour à toutes & à tous.

Je place ici le début du script d'une macro dont l'évènement est _Open. Vous verrez que je suis encore novice. Mais toujours est-il que je suis incapable d'appliquer un recadrage et une reprotection de toute feuille visible au moment de l'application de la macro. Quelqu'un voit une ou des erreurs dans ma démarche ?

PS
Toute les feuilles visible à ce moment sont protéger avec le même mot de passe.

Merci de pouvoir m'enligner correctement.

Private Sub Workbook_Open()
Application.ScreenUpdating = False

Dim CmdB As CommandBar
For Each CmdB In Application.CommandBars
CmdB.Enabled = False
Next CmdB

'pour recadrer et reprotéger toute feuille visible.....
Sheets("Budget").Visible = False
For Each F In Sheets
If F.Visible = True Then F.Unprotect Password:="adm"
F.Range("A1:e16").Select
ActiveWindow.Zoom = True
F.Protect Password:="adm"
F.Protect DrawingObjects:=True, Contents:=True, Scenarios:=True
F.EnableSelection = xlUnlockedCells
Sheets("Budget").Visible = True
Next
Sheets("Budget").Select

1 réponse

Avatar
isabelle
bonjour Stéphan,

je ne suis pas sur de bien comprendre ce que tu veut dire par recadrage,
est ce que cela irait.

For Each f In Sheets
Sheets(f.Name).Activate
With ActiveSheet
If .Visible = True Then .Unprotect Password:="adm"
.Range("A1:e16").Select
ActiveWindow.Zoom = 120 'ou autre valeur
.EnableSelection = xlUnlockedCells
.Protect Password:="adm"
.Protect DrawingObjects:=True, Contents:=True, Scenarios:=True
End With
Next

isabelle


Bonjour à toutes & à tous.

Je place ici le début du script d'une macro dont l'évènement est _Open. Vous verrez que je suis encore novice. Mais toujours est-il que je suis incapable d'appliquer un recadrage et une reprotection de toute feuille visible au moment de l'application de la macro. Quelqu'un voit une ou des erreurs dans ma démarche ?

PS
Toute les feuilles visible à ce moment sont protéger avec le même mot de passe.

Merci de pouvoir m'enligner correctement.

Private Sub Workbook_Open()
Application.ScreenUpdating = False

Dim CmdB As CommandBar
For Each CmdB In Application.CommandBars
CmdB.Enabled = False
Next CmdB

'pour recadrer et reprotéger toute feuille visible.....
Sheets("Budget").Visible = False
For Each F In Sheets
If F.Visible = True Then F.Unprotect Password:="adm"
F.Range("A1:e16").Select
ActiveWindow.Zoom = True
F.Protect Password:="adm"
F.Protect DrawingObjects:=True, Contents:=True, Scenarios:=True
F.EnableSelection = xlUnlockedCells
Sheets("Budget").Visible = True
Next
Sheets("Budget").Select