Classeur Excel avec un comportement différent suivant le mdp
Bonjour à tous,
Pour commencer je m'excuse mais je maîtrise peu Excel donc je risque de ne pas comprendre vos réponses du premier coup ^^.
Ma situation: J'ai un tableau avec des colonnes de renseignements 'non sensibles' et d'autres colonnes sur des informations 'sensibles'.
Je vais devoir mettre ce tableau à la disposition d'une personne (M. X.) qui ne devra jamais ni voir ni modifier les infos 'sensibles' mais ce tableau doit rester consultable dans son intégralité pour d'autres personnes.
La dernière difficulté: Toutes les modifications de M.X. doivent être répercutées dans la version complète du tableau notamment l'insertion de ligne.
Je suis partie sur une première piste en créant deux classeurs:
- L'un avec seuls les colonnes 'non sensibles'
- L'autre avec un collage spécial avec liaison des colonnes 'non sensibles' + les colonnes aux infos 'sensibles'.
Le classeur contenant le tableau complet étant sous mot de passe.
PB -> L'insertion des lignes n'est pas prise en compte dans ce cas.
Deuxième solution:
Un seul classeur avec une seule feuille sur laquelle je masque les colonnes 'sensibles' et je protège la feuille en interdisant les modifications des colonnes.
PB -> C'est peu pratique: à chaque ouverture et fermeture du classeur il faut faire la manip de déverrouiller la feuille et de rendre visible les colonnes et inversement. Sachant que c'est un document qui sera utilisé très souvent, je voudrais simplifier la procédure.
PB2 (plus secondaire) -> peut-on modifier l'affichage des lettres afin d'éviter que les colonnes masquées soient trop visibles?
Je me demandais donc si je ne pouvais pas faire en sorte que la feuille se comporte différemment en fonction d'un mot de passe saisi à l'ouverture.
Exemple: M. X. ouvre le classeur, on lui demande un mot de passe, il rentre le sien "mdpmx", le classeur s'affiche avec les colonnes 'sensibles' masquées et le verrouillage de la feuille.
Moi, j'ouvre le fichier et je rentre mon mot de passe 'mdpmoi' le classeur s'affiche dans son intégralité.
Est-ce possible? Et si non, voyez-vous une autre solution à mon problème?
A prendre en compte: Le classeur pourra être ouvert par deux personnes différentes, au même moment, n'ayant pas les mêmes droits d'accès.
Merci beaucoup de m'avoir lue et j'espère que quelqu'un pourra m'apporter un peu d'aide.
Bonne soirée à tous!
- Messages
- 1'794
- Excel
- 2010
- Inscrit
- 25/08/2014
- Emploi
- Consultant VB6 / SQL / VBA / Excel / Access
Bonsoir,
Ci-joint une proposition qui rejoint la solution 2.
Le principe :
- à l'ouverture : choix entre 2 modes
=> mode admin : saisie d'un mot de passe ("toto", en constante dans le code)
Public Const GS_PWD As String = "toto"=> mode normal : rien
Le mode admin :
- dé-verrouille l'onglet (mot de passe : "toto", le même, idéalement gérer 2 mots de passe différents pour l'accueil et la protection de l'onglet)
- affiche toutes les colonnes
- avant fermeture :
Private Const MS_COL_MASQ = "A,H,J,W,X,Y,AA"=> re-vérouille l'onglet (verrouillage de l'ajout, suppression de colonnes)
Et il faut bien ré-enregistrer le classeur à la fin.
Ensuite, il faut protéger aussi le code VBA par mot de passe (encore un !)
Mais Excel n'est pas sécurisé à 100%, toujours possible de trouver sur le net le moyen de craquer tous les mots de passe ....
En gros, si c'est pour masquer une colonne avec mon code de carte bleue, je n'utiliserai jamais cela
Le PB2 (plus secondaire) n'est pas géré ...
Enfin, pour tester, après le téléchargement du fichier en PJ, il faut déjà se connecter une première fois en tant qu'utilisateur normal et enregistrer une première fois le fichier, sinon bug. Bizarre
A tester et à adapter (code un peu technique
Bonne soirée
Bouben
Merci milles fois!!
ça à l'air parfait, faut que je vois et que j'adapte mais je crois que ça correspond exactement à ce dont j'ai besoin!
C'est super une réponse si rapide et si efficace vraiment merci beaucoup!!
Je reviens d'ici peu pour dire si tout fonctionne.
PS: les données 'sensibles' sont entre guillemets car pas très sensibles, cette protection devrait largement suffire.
Très bonne journée à tous !
ça y est je suis bloquée, y m'aura fallu peu de temps hein! On est nulle ou on l'est pas, après tout c'est un galon qui se mérite!
Tout simplement je ne sais pas comment accéder au code, j'ai fait un clique droit sur l'onglet de la feuille et j'ai fait afficher le code, puis mon imagination m'a fait faux bond et je ne sais pas quoi faire...
Un peu d'aide siouplait!
Bonjour,
Dans VBA Project Double-Clic sur Module1 peut-être ?
A+
Et bien, après l'avoir testé dans toutes les situations, ça me paraît parfait!
Seul petit hic, je suis incapable de reproduire ça sur un nouveau fichier mais je me contenterai d'utiliser celui-ci, c'est très bien comme ça.
Donc merci milles fois et très bonne continuation à tous !
Bonjour à tous,
Bon je remonte le sujet me rendant compte qu'un petit truc cloche dans ma technique! Lorsque la personne qui se connecte en "classique" sélectionne le tableau et le colle dans un nouveau fichier toutes les colonnes se collent même celles sensées être cachées...
Ainsi est-il possible de désactiver, seulement pour les personnes 'classiques', la possibilité de copier/coller (que ce soit par les raccourcis claviers ou avec la souris) ?
Merci pour l'aide apporté,
Très bonnes soirée à vous tous
Bonjour,
Je remonte le topique parce que j'ai vraiment besoin d'aide!
Je voudrais utiliser le fichier qu'a joint Bouben et y inclure l’impossibilité pour l'utilisateur "classique" de copier les colonnes cachées sans pour autant priver l’utilisateur "administrateur" de cette fonction.
Le top du top serait que l'utilisateur classique puisse quand même copier/coller les cellules des colonnes visibles.
C'est peut-être un peu trop demandé ? Quelqu'un aurait-il une solution ? Ou simplement me dire que c'est impossible ?
En tout cas merci à tous,
Sarah B.