XL 2010 Macro pour mot de passe à l'ouverture d'Excel

Orson83

XLDnaute Impliqué
Bonsoir le forum,
Je rencontre un problème pour protéger l'ouverture de mon fichier Excel. En effet j'aimerai qu'à l'ouverture de mon fichier, Excel me demande un mot de passe avant de montrer les onglets. J'ai essayé avec les options présentes dans Excel mais le problème c'est qu'elles permettent soit la modification du mot de passe, soit carrément la suppression.
Je me demandais s'il était possible de faire cela avec une macro qui ouvrirait une message box pour saisir un mot de passe qui serait déjà renseigné dans le code et qui serait unique. J'ai fouillé Internet dans tous les sens mais je n'ai pas trouvé de macro exploitable.
Merci pour votre aide.
PS : ce mot de passe serait différent de celui qui protège déjà mon classeur et mes feuilles.
 
Solution
Ci joint une PJ, seules les feuilles paires sont visibles, et aucune n'est accessible par le menu afficher.Regarde la pièce jointe 1094681
Je ne comprends pas pourquoi elles ne seraient pas toutes affichées (sauf la A mais ce problème est résolu).
Je les ai toutes passées en xlVisible dans les propriétés VBE, puis masqué la feuille 2 par le clic droit dans l'onglet, enregistré XL et à la réouverture d'Excel impossible de la ré-afficher au clic droit dans l'onglet.
Je pense vous avoir suffisamment sollicité et pour cela je vous dis un grand MERCI.
Très belle soirée.
Bien amicalement.
François

sylvanu

XLDnaute Barbatruc
Supporter XLD
Bonjour Tchotchodu,

Tout d'abord il est totalement illusoire de vouloir protéger un fichier XL de façon efficace.
Il est très facile de déjouer les mots de passe et il existe plein d'outils pour le faire facilement.
Donc vous ne protégerez jamais un fichier Office face à un hacker, même amateur.

Ceci étant dit, si vous avez confiance dans les personnes qui utiliseront ce fichier, qu'elles ne sont pas malveillantes, et que la protection rechercher à unique but d'éviter les erreurs de manips, ou destruction accidentelles de formules, alors en PJ un petit essai pour le fun. Je vous laisse découvrir la macro, tout est dans ThisWorkbook.

Mot de passe et mot de passe VBA : 1234.
 

Pièces jointes

  • Protection.xlsm
    23.2 KB · Affichages: 50

Patrice33740

XLDnaute Impliqué
Bonjour,

Il existe un moyen efficace de protéger un fichier (Excel ou autre), sans macro : mettre un mot de passe pour la lecture du fichier.
Là, même Libre office demande le mot de passe ...

Mot de passe 1234
 

Pièces jointes

  • Protection.xlsx
    12 KB · Affichages: 22

Orson83

XLDnaute Impliqué
Bonjour Tchotchodu,

Tout d'abord il est totalement illusoire de vouloir protéger un fichier XL de façon efficace.
Il est très facile de déjouer les mots de passe et il existe plein d'outils pour le faire facilement.
Donc vous ne protégerez jamais un fichier Office face à un hacker, même amateur.

Ceci étant dit, si vous avez confiance dans les personnes qui utiliseront ce fichier, qu'elles ne sont pas malveillantes, et que la protection rechercher à unique but d'éviter les erreurs de manips, ou destruction accidentelles de formules, alors en PJ un petit essai pour le fun. Je vous laisse découvrir la macro, tout est dans ThisWorkbook.

Mot de passe et mot de passe VBA : 1234.
Bonjour sylvanu, le forum,
Je suis à 2 doigts de vous appeler "Dieu" parce-que vous trouver toujours la bonne réponse à mes questions :)
Votre macro est parfaite pour mes besoins. Il y a malheureusement quelques petits soucis.
- Si je renomme le fichier, VBE m'indique à l'ouverture une erreur d'exécution '9' "Variable objet ou variable de bloc With non définie
- Il y a aussi une erreur d'exécution '9' "L'indice n'appartient pas à la sélection" à la fermeture du classeur
- J'aimerai que le classeur s'ouvre sur l'onglet Accueil cellule A1 (j'ai fait un Application.Goto sans succès)
ATTENTION ! Nouveaux MDP :
- A l'ouverture d'Excel TESTOUV
- Verrouiller/déverrouiller le classeur TESTCLAS
- Accès au VBE TESTVBA
Je joins un nouveau fichier dans ce post.
Merci pour votre aide.
François
 

Pièces jointes

  • Protection V2.xlsm
    34.2 KB · Affichages: 20

Orson83

XLDnaute Impliqué
Bonjour,

Il existe un moyen efficace de protéger un fichier (Excel ou autre), sans macro : mettre un mot de passe pour la lecture du fichier.
Là, même Libre office demande le mot de passe ...

Mot de passe 1234
Bonjour Patrice33740, le forum,
Comme indiqué dans mon post initial, j'ai essayé avec les options présentes dans Excel mais le problème c'est qu'elles permettent soit la modification du mot de passe, soit carrément la suppression.
J'aimerai que le mot de passe soit unique et non modifiable mais les fonctionnalités d'Excel ne permettent pas cela ;)
 

Patrice33740

XLDnaute Impliqué
Ceci étant dit, si vous avez confiance dans les personnes qui utiliseront ce fichier, qu'elles ne sont pas malveillantes, et que la protection rechercher à unique but d'éviter les erreurs de manips, ou destruction accidentelles de formules,
Bonjour sylvanu,

Pour moi c'est le seul cas qui nécessite une protection mais dans ce cas le mot de passe est inutile.
Toutes ces autres protections par mot de passe ne servent a rien, au contraire elles laissent croire à certains que les données sont protégées.
Le remède est pire que mal ...
 

sylvanu

XLDnaute Barbatruc
Supporter XLD
Bonjour tout le monde,
@Patrice.
Comme expliqué en prémices c'est illusoire contre la malveillance. Par contre j'ai souvent protégé mes feuilles quand l'outil était destiné à des personnes qui ne maitrisent pas XL, une simple erreur de saisie ou une négligence et le fichier est "vérolé" sans même qu'on s'en aperçoive.
Exemple amusant : vous avez des cellules comportant des formules matricielles; L'utilisateur veut voir comment vous avez fait, il clique dans la cellule, regarde, puis fait Entrée pour voir la cellule suivante; la formule matricielle est détruite ... mais donne un résultat quand même. Et dans un grand tableau c'est totalement indétectable. ( c'est du vécu )

@Tchotchodu,
En PJ une V5. Je suis reparti de ma version.
je pense que le problème vient qu'une fois une feuille protégée on ne peut plus changer sont état visible ou non. Mais je n'ai pas trouvé le piège, tout se mord la queue.
Donc j'ai intégré vous deux macros mais elles ne sont pas appelées.
Partez de cette version et faites le évoluer pour voir où ça coince.
 

Pièces jointes

  • Protection V5.xlsm
    24.3 KB · Affichages: 26

Orson83

XLDnaute Impliqué
Bonjour sylvanu,

Pour moi c'est le seul cas qui nécessite une protection mais dans ce cas le mot de passe est inutile.
Toutes ces autres protections par mot de passe ne servent a rien, au contraire elles laissent croire à certains que les données sont protégées.
Le remède est pire que mal ...
...
Cher Patrice33740,
Cette protection sera couplée à un verrouillage classeur et une détection du numéro de disque dur afin que ce fichier soit mono utilisateur.
Je suis effectivement 100% d'accord avec vous sur le fait que ce fichier restera crackable, mais je vais essayer de préserver un minimum un travail qui m'a pris près de 2 ans.
Merci pour votre compréhension.
Tchotchodu31
 

Staple1600

XLDnaute Barbatruc
Bonjour le fil

Cette protection sera couplée à un verrouillage classeur et une détection du numéro de disque dur afin que ce fichier soit mono utilisateur.
Ceci se fera par macro, non ?
Et l'utilisateur qui utilise Excel peut ouvrir un classeur sans activer les macros... donc

Pour le reste (et là aussi c'est du vécu)
Quand je réalise des outils ou applicatifs dans un cadre professionel, je rencontre au préalable la hierarchie pour une démonstration.
Ensuite réunion Skype, pour présenter "l' appli" (bien grand mot pour un truc qui reste un classeur Excel) aux utilisateurs finaux.
Je note leurs remarques et doléances et adapte si besoin.
Ensuite tout le monde dans la boite sait que je suis l'auteur du classeur et de son contenu (formules ou VBA)
Je ne protége que les feuilles (sans mot de passe), pas le projet VBA.

Mon travail est reconnu et si jamais des collégues bidouillent le classeur et qu'un problème survient, il est conveu qu'ils passent par la hiérarchie.
Jusqu'à présent la hiérarchie a été trés peu dérangée ;)
 
Dernière édition:

Orson83

XLDnaute Impliqué
Bonjour le fil


Ceci se fera par macro, non ?
Et l'utilisateur qui utilise Excel peut ouvrir un classeur sans activer les macros... donc

Pour le reste (et là aussi c'est du vécu)
Quand je réalise des outils ou applicatids dans un cadre professionel, je rencontre au préalable la hierarchie pour une démonstration.
Ensuite réunion Skype, pour présenter "l' appli" (bien grand mot pour un truc qui reste un classeur Excel) aux utilisateurs finaux.
Je note leurs remarques et doléances et adapte si besoin.
Ensuite tout le monde dans la boite sait que je suis l'auteur du classeur et de son contenu (formules ou VBA)
Je ne protége que les feuilles (sans mot de passe), pas le projet VBA.

Mon travail est reconnu et si jamais des collégues bidouillent le classeur et qu'un problème survient, il est conveu qu'ils passent par la hiérarchie.
Jusqu'à présent la hiérarchie a été trés peu dérangée ;)
Bonsoir Staple1600,
Je suis d'accord, mais mon fichier sera utilisé dans un cadre non professionnel à destination d'utilisateurs que je ne connais pas. Alors je me pose une question légitime, dois-je diffuser un travail qui m'a pris 2 ans sans aucune protection tout en sachant que mon fichier sera donné à Pierre et à Paul ? Je ne pense pas.
Du coup je me dis (peut-être à tort) que si je parvenais à le protéger un minimum des informaticiens du dimanche, pourquoi pas ?
Bien sûr que ce fichier sera crackable, mais je pense que malgré tout j'aurai limité la casse.
S'il vous plait, merci de m'apporter votre soutien comme sylvanu, Chris26, et d'autres contributeurs. MERCI.
 

Staple1600

XLDnaute Barbatruc
Re

Il ne s'agissait pas de soutien, mais juste d'un témoignage et d'une redite (quant à la protection illusoire offerte par Excel)

Je te dis juste qu'à partir du moment où tu diffuses ton classeur à des tiers, tu n'es pas à l'abri que le classeur et et son contenu soit exploité sans restrictions.
Ni plus, ni moins.

NB: Je ne critique nullement quoique ce soit.
Ni les différents codes précedemment proposés.
 

Orson83

XLDnaute Impliqué
Bonjour tout le monde,
@Patrice.
Comme expliqué en prémices c'est illusoire contre la malveillance. Par contre j'ai souvent protégé mes feuilles quand l'outil était destiné à des personnes qui ne maitrisent pas XL, une simple erreur de saisie ou une négligence et le fichier est "vérolé" sans même qu'on s'en aperçoive.
Exemple amusant : vous avez des cellules comportant des formules matricielles; L'utilisateur veut voir comment vous avez fait, il clique dans la cellule, regarde, puis fait Entrée pour voir la cellule suivante; la formule matricielle est détruite ... mais donne un résultat quand même. Et dans un grand tableau c'est totalement indétectable. ( c'est du vécu )

@Tchotchodu,
En PJ une V5. Je suis reparti de ma version.
je pense que le problème vient qu'une fois une feuille protégée on ne peut plus changer sont état visible ou non. Mais je n'ai pas trouvé le piège, tout se mord la queue.
Donc j'ai intégré vous deux macros mais elles ne sont pas appelées.
Partez de cette version et faites le évoluer pour voir où ça coince.
...
J'ai testé la version 5 mais elle plante à la première ouverture. Toujours le même message.
J'ai trouvé une piste avec le code :
VB:
  Sub ...()
  On Error GoTo Err_Sub
  .
  .
  Err_Sub:
  MsgBox "Initialisation... Le fichier doit être relancé."
  Application.Quit ' Par exemple ou autre chose
  End Sub
J'ai essayé de l'implémenté mais ça ne fonctionne pas.
La feuille Accueil étant la page de démarrage de mon projet, serait-il possible quelle ne soit pas cachée et accessible en cellule A1 après le mot de passe ? Il n'est pas utile de cacher les autres pages non plus.
Encore merci pour votre aide.
François
 

Orson83

XLDnaute Impliqué
Re

Il ne s'agissait pas de soutien, mais juste d'un témoignage et d'une redite (quant à la protection illusoire offerte par Excel)

Je te dis juste qu'à partir du moment où tu diffuses ton classeur à des tiers, tu n'es pas à l'abri que le classeur et et son contenu soit exploité sans restrictions.
Ni plus, ni moins.

NB: Je ne critique nullement quoique ce soit.
Ni les différents codes précedemment proposés.
Merci pour votre franchise ;)
Un petit coup de pouce peut-être ?
 

Discussions similaires

Réponses
5
Affichages
710
Compte Supprimé 979
C

Statistiques des forums

Discussions
315 091
Messages
2 116 110
Membres
112 662
dernier inscrit
lou75