VBA Macro pour changer le mot de passe

Bonjour à tous,

Sur un fichier ou le classeur et toutes les feuilles sont protégés

- Tous les codes ont donc au début : ActiveSheet.Unprotect Password:="dudu"

et ActiveSheet.Protect Password:="dudu" en fin de code.

+ la même protection pour le classeur.

Je voudrais faire à l'aide d'une macro un "Remplacer sur tout le projet" le mot de passe.

genre : InputBox "entrez l'ancien mot" et InputBox "entrez le nouveau mot"

(ceci pour éviter d'en oublier)

Je sais faire la manip manuellement, mais c'est pour l'utilisateur (j'ai peur que ….)

Je pense qu'il faut inclure les guillemets ?

Comment voyez-vous ce code ?

Bon dimanche

Claude.

bonjour,

C'est assez compliqué : celà suppose que le mot de passe (Pwd) est stocké quelque part "en clair" or à ma connaissance... celà n'existe pas. !

Il faut donc au niveau du programmeur :

  • s'il s'agit d'un nouveau programme prévoir un espace de stockage suffisament dissimulé pour stocker le (les) Pwd de tous les utilisateurs pour pouvoir les vérifier et les changer : Cela peut se faire de diverses manières plus ou moins cachées...
  • S'il s'agit d'un classeur en cours délà existant, il faut déjà récupérer le (les) Pwd existant.
En pratique il n'y a dans Excel aucune mémoire des Pwd une fois les feuilles déprotégées, ni obligation de réutiliser le précédent Pwd. Il faut donc établir une véritable stratégie alternative de gestion des Pwd.

Bon c'est possible, mais il faut déjà fatiguer grave !

Il faut donc déja déterminer le nombre des utilisateurs et s'ils ont des Pwd différents ou non, savoir comment on initialise les Pwd selon qu'ils existent déjà ou selon qu'il s'agit d'un nouveau programme...

Bref il faut avoir une connaissance très précise de l'application à développer pour répondre à cette question !

Sur les stratégies de mémorisation : celà peut se faire dans une BD (intégrée ou non)

ou dans les cas les plus simples dans une variable très masquée. (dans la collection des ActiveWorkbook.Names par exemple)

A+

remarque :

Il n'est pas nécessaire que tous les codes aient au début :

ActiveSheet.Unprotect Password:="dudu"

il existe une stratégie alternative qui permet d'exécuter des macros sans déverrouiller les feuilles ou le classeur... Heureusement car si le Pwd figurait en clair dans les macros, cala interdirait pratiquement toute modification de ce pwd...

A+

Bonjour galopin01,

Ta dernière remarque m'intéresse, je ne connais pas cette alternative !

peux-tu développer ?

Pour la macro "changer le mot de passe", je ne voyais pas çà si compliqué, sachant que

l'utilisateur est sensé avoir le code présent.

Je laisse donc tomber çà !

merci, à te lire

Claude.

Bonjour,

La solution en

La solution est dans le ThisWorkbook_Open

A+

re,

çà c'est formidable !

Plus besoin de tous ces Unprotect...

du coup, une macro pour changer de MPD n'a plus lieu d'être.

Comme j'ai des feuilles masquées, pour les rendre visibles il faut dé-protéger le classeur,

connait-tu encore l'astuce ?

Je me suis risqué à ajouter cette ligne dans le Open

Workbook.Protect Password:="galopin", UserInterfaceOnly:=True

mais c'est pas bon !

encore merci

Claude.

Eh non ce n'est pas possible ! Mais comme on ne passe pas son temps à Masquer / Démasquer des feuilles, ce devrait être anodin.

Es-tu certain d'avoir un besoin réel de cette propriété ? Une feuille cachée est en principe destinée à le rester...

Je suis vraiment dubitatif sur cette demande : Une fois un classeur protégé, je n'avais pas encore rencontré de cas ou la nécessité de déprotection est indispensable.

A moins qu'il ne s'agisse en réalité d'un contrôle d'accès selon les utilisateurs ?

A+

re,

Tu sais, avec Excel et le VBA, plus rien ne m'étonne vraiment (je parles des possibilités et des limites)

C'est pourquoi je posais la question; sait-on jamais !

Je vais mettre en application ta méthode, qui simplifie grandement les projets.

- Question bête : Je ne vois pas de lien entre le Private Sub Workbook_Open() et les codes

sub Protege et Déprotege, ces 2 derniers sont-ils indispensables et font-ils parti de la

méthodes ?

ou simplement pour déprotéger rapidement ?

Bonne soirée

Claude.

bonjour,

Non aucun lien direct.

Seulement pour la construction du classeur c'était bien pratique...

A+

re,

Bon, Ok je note.

merci et à+

Claude.

Rechercher des sujets similaires à "vba macro changer mot passe"