protection de cellules, mais pas la protection "classique"

Nicool

XLDnaute Nouveau
Bonjour à tous!
alors comme premier message j'ai une question:
je crée un gros tableau dans lequel certaines cellules sont calculées (appelons les cellules C) à partir d'autres cellules (les cellules R) remplies par l'utilisateur.
Je ne voudrais pas que le user efface par mégarde une des formules des cellules C. J'ai donc pensé à protéger ces cellules: j'ai enlevé le verrouillage des cellues R (format de cellule...) puis j'ai protégé ma feuille par mot de passe.

Mon problème: certaines de mes cellules sont groupées, et donc peuvent être dissimulées (c'est bien pratique), le problème est que l'utilisateur ne disposant pas du mot de passe ne peut plus choisir de cacher ou afficher ces cellules.

Comment faire pour autoriser/interdire l'affichage de cellules, tout en en protégeant certaines?

A la limite si je pouvais faire apparaître un message de mise en garde quand l'utilisateur veut modifier des cellules C, ce serait parfait (un utilisateur qui sait ce qu'il fait doit pouvoir modifier ce qu'il veut). Mais je ne sais pas comment faire et je ne connais pas encore VBA...
 

Tibo

XLDnaute Barbatruc
Re : protection de cellules, mais pas la protection "classique"

Salut Nicool,

Concernant la protection sur Excel, les choses ont bien évolués sur les dernières versions. Peux-tu préciser sur quelle version tu travailles ?

Ensuite, je ne comprends pas trop :"Mon problème: certaines de mes cellules sont groupées, et donc peuvent être dissimulées "

Qu'appelle-tu des cellules groupées et qui donc peuvent être dissimulées ?

Apporte quelques précisions pour une meilleure compréhension.

@+
 

Nicool

XLDnaute Nouveau
Re : protection de cellules, mais pas la protection "classique"

Okay je m'explique:
j'ai groupé mes cellules, en fait je voulais parler de lignes: j'ai sélectionné plusieurs lignes consecutives et j'ai fait: Données->Grouper et créer un plan->grouper.
Une fois cela fait, je peut choisir, en cliquant sur un bouton, d'afficer ou de cacher ces lignes.
Mon problème est que, quand ma feuille est protégée, je ne peux plus afficher un groupe de lignes cachées, et vice-versa.

Sinon je travaille sous Excel 2002, mais si jamais c'est 100 000 fois mieux de changer de version je peux peut-être le demander.
 

mjo

XLDnaute Impliqué
Re : protection de cellules, mais pas la protection "classique"

Bonjour,

Pour empêcher l'effacement du contenu d'une cellule, il n'y a que la protection.
Même sous la version 2003 un plan ne peut être affiché ou masqué sur une feuille protégée.
Mais il exsite des macros qui permettent de le faire.
Une recherche sous les anciens messages donnera plusieurs exemples.

mjo
 

Darnel

XLDnaute Impliqué
Re : protection de cellules, mais pas la protection "classique"

Bonjour,

J'ai un exemple de code dans le cas des filtres automatiques qui ne pouvaient être utilisés quand une feuille était protégée ou bien la protection sautait pour pouvoir les utiliser

Voici le bout de code :

ActiveSheet.Protect Contents:=True, UserInterfaceOnly:=True

Si tu le mets dans une macro, tu peux faire un truc du style : CODE POUR LES FILTRES AUTOMATIQUES A ADAPTER A TON PROBLEME

Code:
Sub nom_de_ta_macro()
 
ActiveSheet.Select
ActiveSheet.Unprotect
Range("A1").Select 
ActiveSheet.EnableAutoFilter = True  
ActiveSheet.Protect Contents:=True, UserInterfaceOnly:=True
Selection.AutoFilter
 
End Sub

Un conseil : regarde le code de la manip que tu veux faire avec l'enregisteur de macro, puis insère la ligne de code que je t'ai donné
et tu peu ensuite affecter la macro à un bouton que tu crée.
Ainsi, l'utilisateur saura ce qu'il fait et tu garde ta protection.
résultat non garanti mais à essayer
 

Nicool

XLDnaute Nouveau
Re : protection de cellules, mais pas la protection "classique"

Merci à tous pour votre aide!
je suis également aller voir ce topic:

https://www.excel-downloads.com/threads/protection-et-masquer-lignes.53707/

où quelqu'un avait le même problème que moi, et son problème a été résolu.
Malheureusement je suis un très grand débutant, et je n'ai qu'une vague idée du fonctionnement des macros. Si je ne me trompe pas il s'agit de fonctions, d'où l'idée de Darnel d'utiliser un bouton?

Je suis un peu un boulet, mais n'auriez-vous pas un code à entrer quelque part pour que le masquage/affichage de lignes/colonnes soit possible même quand ma feuille est protégée (sans action supplémentaire de l'utilisateur)?

Je veux dire, j'ai la possibilité de masquer plusieurs groupes de lignes ou de colonnes indépendants, la solution du topic dont je donne le lien étant focalisée sur une ligne, cela ne m'aide pas (et comme je sais à peine ce qu'est une macro, je ne peux pas l'adapter).

J'ai peur d'être un peu brouillon dans ce que je dis, mais si vous n'avez pas le temps de m'aider (ma boulétitude demande de la patience), pourriez vous me conseiller un bon livre pas trop énorme (plutôt 200-300 pages que 800), en Français, qui me permettrait de maîtriser mieux excel, et surtout les macros.

En, tout cas merci pour votre aide!!!
 

Darnel

XLDnaute Impliqué
Re : protection de cellules, mais pas la protection "classique"

RE


alors voilà ce que je te propose: C'est pas fantastique mais ca marche et c'est mieu que rien:

tu vas sur ton fichier : commence par oter la protection (pas de code)

Ensuite, tu fais : Alt F11

a droite dans l'explorateur tu ouvre thisworkbook

et tu colle ce code :

Code:
Sub Macro1()
    ActiveSheet.Protect Contents:=True, UserInterfaceOnly:=True
    Selection.EntireColumn.Hidden = True
    
    
End Sub
Sub Macro2()

    ActiveSheet.Protect Contents:=True, UserInterfaceOnly:=True
    Selection.EntireColumn.Hidden = False
 
End Sub

Ces deux macro te permettent d'afficher et masquer les colonnes tout en conservant tes protections

tu peux les renommer en remplacant Macro1 par masquer et Macro2 par afficher

Ensuite, tu va dans affichage, barre d'outils, Formulaire
tu selectionne le symbole bouton et tu crée un bouton que tu place et présente à ta guise
Il te demande (normalement) d'affecter une macro : tu choisi la première, tu nomme le bouton
quand tu selectionne une ou X cellule, et que tu clique sur le bouton, il te masque la/les colonne entièrement
Idem pour Macro2

redemmande si tu as besoin d'explications supplémentaires
 

Darnel

XLDnaute Impliqué
Re : protection de cellules, mais pas la protection "classique"

J'ai oublié

Si tu veux masquer des lignes, dans le code, remplace EntireColumn par : EntireRow

pour avoir le double effet :p tu peux mettre ce code :


Code:
Sub Macro1()

    ActiveSheet.Protect Contents:=True, UserInterfaceOnly:=True
    Selection.EntireColumn.Hidden = True
    Selection.EntireRow.Hidden = True

    
End Sub
Sub Macro2()


    ActiveSheet.Protect Contents:=True, UserInterfaceOnly:=True
    Selection.EntireColumn.Hidden = False
    Selection.EntireRow.Hidden = False
End Sub
 
Dernière édition:

Samantha

XLDnaute Accro
Re : protection de cellules, mais pas la protection "classique"

Bonjour les Gens, le Forum, tous et toutes, ;)

Si je ne m'abuse (docteur ?), lorsque tu fais OUTILS/PROTECTION/PROTEGER LA FEUILLE

Y'a une boite de dialogue qui s'affiche genre (désolée je sais pas coller une image dans mes messages si quelqu'un passe par là et peut me dire :x)
-une case où tu mets ton mot de passe et
-dessous une liste d'options avec des cases à cocher

Y'aurait pas des fois là dedans une case qui ferait ton bonheur ??

A te lire.


Sam
 

Darnel

XLDnaute Impliqué
Re : protection de cellules, mais pas la protection "classique"

Re

Ou en es tu

As tu besoin d'aide?
Un petit mots serait le bienvenu pour savoir si ma réponse te satisfait
J'ai essayer de détailler au maximum ce que tu devais faire pour que ça fonctionne.

Donne moi des news
 

Nicool

XLDnaute Nouveau
Re : protection de cellules, mais pas la protection "classique"

Merci pour ton aide Darnel! Mais comme je le disais dans un message précédent de ce topic, je suis un débutant extrême en Excel, et j'aurais du mal à exploiter les solutions que tu m'as donné. D'autant plus que je recherche plutôt un bout de code me permettant d'afficher/cacher des lignes en mode protégé comme si j'étais en mode non-protégé, alors que ta solution requiert, si j'ai bien compris, que l'utilisateur actionne un bouton.

En tout cas merci à tous pour votre aide, en attendant j'ai mis de côté ce problème, mais si quelqu'un a une idée ou un bon livre excel à me conseiller je suis preneur.

Encore merci!
 

Darnel

XLDnaute Impliqué
Re : protection de cellules, mais pas la protection "classique"

Pour ce qui est d'un bout de code, quel qu'il soit, la procédure que je t'ai indiquer est la même.
Si tu veu un apperçu de ce que donne le mien : voici un fichier
 

Pièces jointes

  • Nicool1.xls
    23.5 KB · Affichages: 99

Discussions similaires

Réponses
2
Affichages
167

Membres actuellement en ligne

Statistiques des forums

Discussions
312 229
Messages
2 086 426
Membres
103 206
dernier inscrit
diambote