Modifier macros d'un classeur protégé

agnèsk

XLDnaute Nouveau
Voici la macro que j'ai placée dans un classeur =(Réparation.xls)


1-Workbooks.Open Filename:="...Classeur1.xls" (Classeur à modifier mais protegé par mot passe VBA)

2-Set Application.VBE.ActiveVBProject = Workbooks(Classeur1.xls).VBProject

3-SendKeys "(^)+{Enter}" & "Mon Mot de passe" & "{ENTER}"

4-With Workbooks(Classeur1.xls).VBProject.VBComponents("MonUserform").CodeModule


Le code bug à 4
Il semble que le classeur ne soit pas activé dans le vba, donc le 3 n'est pas pris en compte et le classeur toujours protégé en vba !
J'ai essayé en temporisant entre les lignes de codes sans succès.

Quelqu'un aurait il une piste?
 

PMO2

XLDnaute Accro
Re : Modifier macros d'un classeur protégé

Bonjour,

Une piste avec le code de Bill Manville

Code:
'Protéger et déprotéger le projet d'un classeur
'par macro
'Code de Bill Manville
'diffusé sur mpfe par papou

Sub TestProtect()
ProtectVBProject Workbooks("Proteger_deproteger.xls"), "Jack"
End Sub

Sub TestUnprotect()
UnprotectVBProject Workbooks("Proteger_deproteger.xls"), "Jack"
End Sub

Sub UnprotectVBProject(WB As Workbook, ByVal Password As String)
Dim vbProj As Object

Set vbProj = WB.VBProject

'can't do it if already unlocked!
If vbProj.Protection <> 1 Then Exit Sub

Set Application.VBE.ActiveVBProject = vbProj

' now use lovely SendKeys to quote the project password
SendKeys Password & "~~"
Application.VBE.CommandBars(1).FindControl(ID:%78,
recursive:=True).Execute
End Sub

Sub ProtectVBProject(WB As Workbook, ByVal Password As String)
Dim vbProj As Object

Set vbProj = WB.VBProject

'can't do it if already locked!
If vbProj.Protection = 1 Then Exit Sub

Set Application.VBE.ActiveVBProject = vbProj

' now use lovely SendKeys to set the project password
SendKeys "+{TAB}{RIGHT}%V{+}{TAB}" & Password & "{TAB}" & _
Password & "~"

Application.VBE.CommandBars(1).FindControl(ID:%78,
recursive:=True).Execute

WB.Save
End Sub

Cordialement.

PMO
Patrick Morange
 

agnèsk

XLDnaute Nouveau
Re : Modifier macros d'un classeur protégé

bonsoir

merci pour cette piste...que j'avais déjà explorée

mais elle produit le me^me résultat
à savoir la fenetre de saisie du mot de passe vba apparait toujours !

je suis preneur d'une autre piste
 

Discussions similaires

Statistiques des forums

Discussions
312 329
Messages
2 087 329
Membres
103 517
dernier inscrit
hbenaoun63