Grouper Dissocier dans une feuille protégée

Fermé
Seiken781 Messages postés 4 Date d'inscription mercredi 12 avril 2017 Statut Membre Dernière intervention 24 avril 2018 - 12 avril 2017 à 17:29
gbinforme Messages postés 14946 Date d'inscription lundi 18 octobre 2004 Statut Contributeur Dernière intervention 24 juin 2020 - 13 avril 2017 à 23:06
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 lundi 18 octobre 2004 Statut Contributeur Dernière intervention 24 juin 2020 4 712
12 avril 2017 à 21:46
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 mercredi 12 avril 2017 Statut Membre Dernière intervention 24 avril 2018
13 avril 2017 à 10:23
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 lundi 18 octobre 2004 Statut Contributeur Dernière intervention 24 juin 2020 4 712
13 avril 2017 à 23:06
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