Sous-totaux en protection de feuille

Nashou

XLDnaute Junior
Bonjour à tous,

Je suis utilisateur d'Excel 2003.

Je sais comment protéger une feuille. Outils / Protection / Protéger la feuille.
Par défault, toutes les cellules sont protégées.
On peut y mettre des exceptions en cochant certains critères. Mais ... et oui, c'est là où j'ai un problème.

Il n'y a pas d'exception pour les sous-totaux.
Quand on protège la feuille, ça vérouille les sous-totaux et un utilisateur qui consulte ne peut pas déplier le tableau à sa guise.

Je trouve cela frustrant.

Existe t-il une solution ?
Peut-on concevoir une macro avec cette exception ?
D'avance merci pour vos réponses.

Cordialement,

Nashou
 

Pierrot93

XLDnaute Barbatruc
Re : Sous-totaux en protection de feuille

Bonjour Nashou, Jean-Marcel

pour ce faire, il faut protéger la feuille par vba en utilisant l(argument "userinterfaceonly", ci-dessous code à placer dans le module "thisworkbook", se déclenche à l'ouverture du classeur :

Code:
Option Explicit
Private Sub Workbook_Open()
With Feuil1
    .EnableOutlining = True
    .Protect "toto", , , , True
End With
End Sub

bon après midi
@+
 

Nashou

XLDnaute Junior
Re : Sous-totaux en protection de feuille

Voilà ce que j'ai fais :

J'ai créé une macro pour protéger la feuille :

Private Sub CommandButton1_Click()
ActiveSheet.Protect Password:="", UserInterfaceOnly:=True
End Sub

Et une macro pour ôter la protection :

Private Sub CommandButton2_Click()
ActiveSheet.Unprotect Password:=""
End Sub

Comment intégrer dans ma macro de protection l'exception concernant les sous-totaux ?
Je n'ai pas bien saisi.
 
Dernière édition:

Pierrot93

XLDnaute Barbatruc
Re : Sous-totaux en protection de feuille

Bonjour Nashou, Jean-Marcel

modifie comme suit :

Code:
With Feuil1
    .EnableOutlining = True
    .Protect , True, True, True, True
End With

sinon, si tu veux utiliser les aguments nommés, la ligne concernant le "protect" s'écrit ainsi :

Code:
    .Protect DrawingObjects:=True, contents:=True, Scenarios:=True, userinterfaceonly:=True

bon après midi
@+
 

Nashou

XLDnaute Junior
Re : Sous-totaux en protection de feuille

Merci Pierrot !!
Je mets la macro que j'utilise pour ceux qui feraient des recherches futures sur le même sujet.

Private Sub CommandButton1_Click()
With ActiveSheet
.EnableOutlining = True
.Protect DrawingObjects:=True, contents:=True, Scenarios:=True, userinterfaceonly:=True
End With
End Sub
 

Discussions similaires

Statistiques des forums

Discussions
312 681
Messages
2 090 881
Membres
104 683
dernier inscrit
stefff