Grouper Dissocier dans une feuille protégée

Seiken781 Messages postés 4 Date d'inscription   Statut Membre Dernière intervention   -  
gbinforme Messages postés 14946 Date d'inscription   Statut Contributeur Dernière intervention   -
Bonjour,

J'ai protégé plusieurs feuilles excel (qui contiennent pas mal de formules) et j'aimerais pouvoir grouper dissocier les données afin d'avoir les infos importantes en lecture directe.

Problème lorsque je vérrouille mes feuilles excel ne me permet plus de grouper dissocier.

J'ai lu que le problème était contournable via une macro mais je ne m'y connais pas du tout.

Quelqu'un aurait il une procédure pas à pas ?
Précision : j'utilise Office 2013

Merci d'avance!

1 réponse

gbinforme Messages postés 14946 Date d'inscription   Statut Contributeur Dernière intervention   4 724
 
Bonjour,

J'ai lu que le problème était contournable via une macro
Tu parles d'un contournement : la macro enlèves la protection, fait l'action, puis la remet. Si tu veux faire autre chose que ce qui est codé faudra modifier la macro. D'autre part si la macro le permet, n'importe qui peut l'utiliser, quel est donc l'intérêt de la protection ?

Je ne sais pas la raison de la protection mais j'espère qu'elle est pour toi obligatoire car si c'est le premier souci qu'elle te crée ce n'est pas le dernier, surtout si tu oublies le mot de passe.
0
Seiken781 Messages postés 4 Date d'inscription   Statut Membre Dernière intervention  
 
Bonjour,

Pour être plus précis sur ma demande : le fichier va être partagé avec un certain nombres d'utilisateurs et j'ai besoin de protéger beaucoup de formules.
Le fichier contenant énormément de lignes il faut que je puisse grouper dissocier pour éviter de défiler à la souris sur des centaines de lignes.

La manipulation que j'ai lu était la suivante. J'ai essayé mais ça ne marche pas sur mon fichier.

Avec VBA

Private Sub Workbook_Open()
With Worksheets("Feuil1")
.EnableAutoFilter = True
.EnableOutlining = True
.Protect Contents:=True, Password:="Toto", UserInterfaceOnly:=True
End With
End Sub

Je suis donc bloqué...
0
gbinforme Messages postés 14946 Date d'inscription   Statut Contributeur Dernière intervention   4 724
 
Bonjour,

Le code que tu donnes ne peut en aucune manière te permettre tes groupages. Tu peux le modifier ainsi :
Private Sub Workbook_Open()
With Worksheets("Feuil1")
    .EnableAutoFilter = True
    .EnableOutlining = True
    .Protect "1234", , True, , True
End With
End Sub

Je te propose ces 2 macros à mettre dans un module standard et que tu peux associer à des raccourcis (ctrl+g / ctrl+d par exemple) : pour grouper, tu sélectionnes tes lignes et ctrl+g et idem pour dissocier
Public Sub grouper()
    ActiveSheet.Unprotect "1234"
    Selection.Rows.Group
    ActiveSheet.EnableOutlining = True
    ActiveSheet.Protect "1234", , True, , True
End Sub

Public Sub degrouper()
    ActiveSheet.Unprotect "1234"
    Selection.Rows.Ungroup
    ActiveSheet.EnableOutlining = True
    ActiveSheet.Protect "1234", , True, , True
End Sub
Tu remplaces 1234 par ton mot de passe bien sûr.
0