Comment puis-je supprimer par programme un mot de passe (connu) d'un projet Excel VBA?
Pour être clair: je veux supprimer le mot de passe du projet VBA, pas le classeur ou les feuilles de calcul.
Cela a une méthode simple en utilisant SendKeys pour déprotéger le projet VBA. Cela vous ferait entrer dans le projet, donc vous devriez continuer à utiliser SendKeys pour trouver un moyen de supprimer la protection par mot de passe: http://www.pcreview.co.uk/forums/thread-989191 .php
Et voici une solution qui utilise une méthode plus avancée et un peu plus fiable pour supprimer la protection. Encore une fois, il ne déverrouillera que le projet VB pour vous. http://www.ozgrid.com/forum/showthread.php?t=13006&page=2
Je n'ai essayé aucune de ces méthodes, mais cela peut vous faire gagner du temps si c'est ce que vous devez faire ...
Une autre façon de supprimer le mot de passe du projet VBA consiste à:
UPDATE: pour Excel 2010 (fonctionne pour MS Office Pro Plus 2010 [14.0.6023.1000 64 bits]),
Si le classeur est protégé:
xl
workbook.xml
Et sélectionnez Modifier .<workbookProtection workbookPassword="XXXX" lockStructure="1"/>
(XXXX
est votre mot de passe crypté)XXXX
. (ie. <workbookProtection workbookPassword="" lockStructure="1"/>
)Si les feuilles de calcul sont protégées:
xl/worksheets/
.Sheet1.xml
, sheet2.xml
, Etc. et sélectionnez Éditer .<sheetProtection password="XXXX" sheet="1" objects="1" scenarios="1" />
<sheetProtection password="" sheet="1" objects="1" scenarios="1" />
)J'ai trouvé un autre moyen de résoudre ce problème afin d'éviter le mot de passe de VBA Project, sans perdre le mot de passe Excel.
utilisez Hex-editor XVI32 pour le processus
si le type de fichier est XLSM:
J'ai trouvé ceci ici qui décrit comment définir le mot de passe du projet VBA. Vous devriez pouvoir le modifier pour supprimer le mot de passe du projet VBA.
Celui-ci n'utilise pas SendKeys.
Faites-moi savoir si cela aide! JFV