Limitation d'accès à certaines feuille Excel et VBA

Anonyme
2024-03-19T18:22:08+00:00

Bonjour,

Je ne trouve pas ma réponse alors je tente de la poser sur le forum. Est il possible de limiter l'accès à seulement certaines feuilles d'un fichier Excel en utilisant les identifiants et/ou mot de passe de session Windows ? Mon idée serait qu'en fonction de la personne, seules certaines feuilles ne puissent être affichées.

Pensez vous que ce serait possible en VBA ? Avec quelle fonction ?

Merci par avance de votre réponse.

Sébastien

Microsoft 365 et Office | Excel | Autres | Windows

Question verrouillée. Cette question a été migrée à partir de la Communauté Support Microsoft. Vous pouvez voter pour indiquer si elle est utile, mais vous ne pouvez pas ajouter de commentaires ou de réponses ni suivre la question.

0 commentaires Aucun commentaire
Réponse acceptée par l’auteur de la question
Hecatonchire 53,950 Points de réputation Modérateur bénévole
2024-03-20T13:10:03+00:00

Ca va arrêter la plus grande partie des utilisateurs mais pas une personne voulant vraiment y accéder (il peut simplement ouvrir le fichier dans une autre application qu'Excel comme Open Office/Libre Office puis Afficher les feuilles 😔).

Ce que veux dire, c'est que ce n'est peut être pas nécessaire de monter une "usine à gaz" pour au final laisser d'énorme faille (ca me rappelle la protection de CD à plusieurs millions d'euros de développement passée via un coup de marqueur sur le CD)

Cette réponse a-t-elle été utile ?

1 personne a trouvé cette réponse utile.
0 commentaires Aucun commentaire

7 réponses supplémentaires

  1. Anonyme
    2024-03-20T11:16:53+00:00

    En fait pour te donner plus d'information, je prépare un ficher excel pour une entreprise que j'accompagne. Ce fichier contiendrait plusieurs feuilles à raison d'une par service et des feuilles génériques pour tous. Je précise que les données ne sont pas ultra confidentielle car ce ne sont pas des données stratégique d'entreprise.

    L'idée serait que les managers de chaque service ne puissent avoir accès qu'à leur propre service et au feuille générique. En revanche le service RH doit pouvoir accès à tout.

    J'ai vu que je peux faire en sorte de masquer les feuilles "services" à la fermeture du fichier via VBA.

    Je peux aussi conditionner la modification de la structure du fichier à un mot de passe hors VBA et notamment la possibilité de afficher les feuilles masquées lors de la fermeture -> cela me permettrait de donner le mot de passe aux RH afin qu'ils puissent tout voir tout en limitant l'accès aux autres managers qui ouvriraient le fichier sans macro. De ce coté là cela me semble donc relativement sécurisé.

    Ensuite, initialement j'avais envisagé l'idée d'un userform qui s'ouvrirait au démarrage du fichier et dans lequel on demanderai l'identifiant et le mot de passe windows pour que le manager puisse avoir accès a sa feuille "service". L'avantage du mot de passe windows serait de ne pas avoir un MDP supplémentaire à retenir. Sauf qu'en pratique, soit la personne est connectée sur sa propre session et le contrôle du login (avec la fonction "environ") suffit, soit elle est sur une autre session et la, impossible pour excel d'aller chercher le mot de passe sauf à le stocker dans le fichier même ce qui serait bien sur totalement absurde d'un point de vue sécurité informatique.

    Le moins dangereux serait je pense soit de créer un mot de passe hors VBA par personne et par feuille comme tu le suggères, soit conditionner l'ouverture des feuilles à l'identifiant de la session windows.....

    Cette réponse a-t-elle été utile ?

    0 commentaires Aucun commentaire
  2. Hecatonchire 53,950 Points de réputation Modérateur bénévole
    2024-03-19T21:01:29+00:00

    On peut mettre un mot de passe à l'ouverture du fichier et c'est la seul protection fiable (sinon il y aurait des options avec les DRM mais c'est payant)

    Mais à partir du moment ou la personne a ce mot de passe, libre à elle d'ouvrir le fichier avec ou sans macros actives (sinon ce serait "trop simple" pour les créateur de virus).

    Pour info : Tu peux protéger le contenu de chaque feuille avec des mots de passe différents (voir même des plages de cellules) (la solidité de ces "protections" est assez légère).

    Tu peux masquer le classeur et faire en sorte que ce soit la macro qui le démasque. Si l'utilisateur ouvre le fichier sans macro activé, Excel se présente vide !

    Mais il suffit de connaitre cette option et la manipulation d'affichage pour le réafficher manuellement (tout dépend des connaissances de la "personne en face").

    Excel n'est pas fait pour ça !

    Cette réponse a-t-elle été utile ?

    0 commentaires Aucun commentaire
  3. Anonyme
    2024-03-19T20:39:18+00:00

    Bonjour,

    Merci de votre réponse.

    Effectivement je n'avais pas envisagé l'utilisation sans macro.

    Alors pour contourner le contournement du problème serait 'il possible de faire en sorte que toutes à protégées les feuilles soient masquées à l'ouverture du fichier et ajouter une protection hors VBA (mot de passe classique) empêchant de faire apparaitre les feuilles en cas d'ouverture sans macro.
    Cela pourrait permettre de rendre inutilisable le fichier sans activation des macros. Et de prévoir un affichages des seules feuilles concernant la personne qui s’identifierait avec un identifiant Windows.....

    Je sais pas si je suis clair......

    Cette réponse a-t-elle été utile ?

    0 commentaires Aucun commentaire
  4. Hecatonchire 53,950 Points de réputation Modérateur bénévole
    2024-03-19T18:42:10+00:00

    Bonjour,

    Il savoir qu'en ouvrant le fichier sans activer le VBA, cette "sécurité" ne fonctionnera pas !

    (sinon tu peux mettre les feuilles en affichage veryhidden mais une personne faisant un peu de VBA y accèdera très facilement)

    Donc si c'est simplement pour un confort d'utilisation, demander le Prénom/Nom est peut être suffisant.

    Cette réponse a-t-elle été utile ?

    0 commentaires Aucun commentaire