Bonjour,
Je souhaiterai savoir si l'on peut dé-protéger un projet (si l'on connait
le
mot de passe) via une macro.
Merci d'avance
Tucky
Bonjour,
Je souhaiterai savoir si l'on peut dé-protéger un projet (si l'on connait
le
mot de passe) via une macro.
Merci d'avance
Tucky
Bonjour,
Je souhaiterai savoir si l'on peut dé-protéger un projet (si l'on connait
le
mot de passe) via une macro.
Merci d'avance
Tucky
Salut Tucky,
voir ici:
http://frederic.sigonneau.free.fr/code/VBE/DeprotegeProjetVBA.txt
--
Amicalement
Jean-François Aubert
{Vaudois de la Côte Lémanique}
"Tucky" a écrit dans le message de news:Bonjour,
Je souhaiterai savoir si l'on peut dé-protéger un projet (si l'on connait
le
mot de passe) via une macro.
Merci d'avance
Tucky
Salut Tucky,
voir ici:
http://frederic.sigonneau.free.fr/code/VBE/DeprotegeProjetVBA.txt
--
Amicalement
Jean-François Aubert
{Vaudois de la Côte Lémanique}
"Tucky" <Tucky@discussions.microsoft.com> a écrit dans le message de news:
8028C7DB-DA8F-40AE-B495-A98BB9437EBF@microsoft.com...
Bonjour,
Je souhaiterai savoir si l'on peut dé-protéger un projet (si l'on connait
le
mot de passe) via une macro.
Merci d'avance
Tucky
Salut Tucky,
voir ici:
http://frederic.sigonneau.free.fr/code/VBE/DeprotegeProjetVBA.txt
--
Amicalement
Jean-François Aubert
{Vaudois de la Côte Lémanique}
"Tucky" a écrit dans le message de news:Bonjour,
Je souhaiterai savoir si l'on peut dé-protéger un projet (si l'on connait
le
mot de passe) via une macro.
Merci d'avance
Tucky
Bonjour Jean-Francois,
Merci pour le lien ; mais de mon lieu de travail, une partie d'Internet
n'est pas accessible. Serait-il possible d'avoir une copie du fichier txt
sur
ce forum ou via "www.cjoint.com".
Merci d'avance.
TuckySalut Tucky,
voir ici:
http://frederic.sigonneau.free.fr/code/VBE/DeprotegeProjetVBA.txt
--
Amicalement
Jean-François Aubert
{Vaudois de la Côte Lémanique}
"Tucky" a écrit dans le message de
news:Bonjour,
Je souhaiterai savoir si l'on peut dé-protéger un projet (si l'on
connait
le
mot de passe) via une macro.
Merci d'avance
Tucky
Bonjour Jean-Francois,
Merci pour le lien ; mais de mon lieu de travail, une partie d'Internet
n'est pas accessible. Serait-il possible d'avoir une copie du fichier txt
sur
ce forum ou via "www.cjoint.com".
Merci d'avance.
Tucky
Salut Tucky,
voir ici:
http://frederic.sigonneau.free.fr/code/VBE/DeprotegeProjetVBA.txt
--
Amicalement
Jean-François Aubert
{Vaudois de la Côte Lémanique}
"Tucky" <Tucky@discussions.microsoft.com> a écrit dans le message de
news:
8028C7DB-DA8F-40AE-B495-A98BB9437EBF@microsoft.com...
Bonjour,
Je souhaiterai savoir si l'on peut dé-protéger un projet (si l'on
connait
le
mot de passe) via une macro.
Merci d'avance
Tucky
Bonjour Jean-Francois,
Merci pour le lien ; mais de mon lieu de travail, une partie d'Internet
n'est pas accessible. Serait-il possible d'avoir une copie du fichier txt
sur
ce forum ou via "www.cjoint.com".
Merci d'avance.
TuckySalut Tucky,
voir ici:
http://frederic.sigonneau.free.fr/code/VBE/DeprotegeProjetVBA.txt
--
Amicalement
Jean-François Aubert
{Vaudois de la Côte Lémanique}
"Tucky" a écrit dans le message de
news:Bonjour,
Je souhaiterai savoir si l'on peut dé-protéger un projet (si l'on
connait
le
mot de passe) via une macro.
Merci d'avance
Tucky
n'est pas accessible. Serait-il possible d'avoir une copie du fichier txt
sur
ci après.
n'est pas accessible. Serait-il possible d'avoir une copie du fichier txt
sur
ci après.
n'est pas accessible. Serait-il possible d'avoir une copie du fichier txt
sur
ci après.
et un fichier .txt à la 9, un!
Attribute VB_Name = "DeprotegeProjetVBA"
'================================================ > 'Laurent Longre, mpfe
Private Declare Function FindWindowA Lib "User32" _
(ByVal lpClassName As String, _
ByVal lpWindowName As String) As Long
Private Declare Function GetForegroundWindow Lib "User32" () As Long
Private Declare Function SetForegroundWindow Lib "User32" _
(ByVal hWnd As Long) As Long
Function Déprotège(Classeur As String, MdP As String) As Boolean
Dim XLhWnd As Long, VBEhWnd As Long, CurhWnd As Long
Dim Wbk As Workbook
On Error Resume Next
Set Wbk = Workbooks(Dir$(Classeur))
On Error GoTo Fin
If Not Wbk Is Nothing Then
If Wbk.FullName <> Classeur Then Exit Function
If Not Wbk.Saved Then Wbk.Save
Else: Application.ScreenUpdating = False
End If
CurhWnd = GetForegroundWindow
XLhWnd = FindWindowA(vbNullString, Application.Caption)
With Application.VBE
VBEhWnd = FindWindowA(vbNullString, .MainWindow.Caption)
If CurhWnd = XLhWnd Then SetForegroundWindow VBEhWnd
.CommandBars.FindControl(ID:%57).Execute
' NE PAS EFFACER, même si le classeur est déjà ouvert !!!!!!
Workbooks.Open Classeur
If ActiveWorkbook.VBProject.Protection = vbext_pp_locked Then
SendKeys "~" & MdP & "~", True
.ActiveCodePane.Window.Close
End If
End With
SetForegroundWindow CurhWnd
Déprotège = True
Exit Function
Fin:
End Function
Sub test()
' Déprotection du projet VBA C:TempTest.xls (mot de passe "Zaza"),
' Ajout d'un module standard dans ce projet, puis rétablissement
' de la protection
Const Classeur = "C:TempTest.xls"
If Not Déprotège(Classeur, "zaza") Then
MsgBox "Erreur"
Else
MsgBox "Projet VBA déprotégé."
With Workbooks(Dir$(Classeur))
.VBProject.VBComponents.Add vbext_ct_StdModule
.Close True
End With
Workbooks.Open Classeur
MsgBox "Projet reprotégé, ajout d'un module standard."
End If
End Sub
'================================================ >
'Sub essai()
'Fichier = Workbooks("Classeur3.xls").FullName
'MsgBox Fichier
'End Sub
"Tucky" a écrit dans le message de news:Bonjour Jean-Francois,
Merci pour le lien ; mais de mon lieu de travail, une partie d'Internet
n'est pas accessible. Serait-il possible d'avoir une copie du fichier txt
sur
ce forum ou via "www.cjoint.com".
Merci d'avance.
TuckySalut Tucky,
voir ici:
http://frederic.sigonneau.free.fr/code/VBE/DeprotegeProjetVBA.txt
--
Amicalement
Jean-François Aubert
{Vaudois de la Côte Lémanique}
"Tucky" a écrit dans le message de
news:Bonjour,
Je souhaiterai savoir si l'on peut dé-protéger un projet (si l'on
connait
le
mot de passe) via une macro.
Merci d'avance
Tucky
et un fichier .txt à la 9, un!
Attribute VB_Name = "DeprotegeProjetVBA"
'================================================ > 'Laurent Longre, mpfe
Private Declare Function FindWindowA Lib "User32" _
(ByVal lpClassName As String, _
ByVal lpWindowName As String) As Long
Private Declare Function GetForegroundWindow Lib "User32" () As Long
Private Declare Function SetForegroundWindow Lib "User32" _
(ByVal hWnd As Long) As Long
Function Déprotège(Classeur As String, MdP As String) As Boolean
Dim XLhWnd As Long, VBEhWnd As Long, CurhWnd As Long
Dim Wbk As Workbook
On Error Resume Next
Set Wbk = Workbooks(Dir$(Classeur))
On Error GoTo Fin
If Not Wbk Is Nothing Then
If Wbk.FullName <> Classeur Then Exit Function
If Not Wbk.Saved Then Wbk.Save
Else: Application.ScreenUpdating = False
End If
CurhWnd = GetForegroundWindow
XLhWnd = FindWindowA(vbNullString, Application.Caption)
With Application.VBE
VBEhWnd = FindWindowA(vbNullString, .MainWindow.Caption)
If CurhWnd = XLhWnd Then SetForegroundWindow VBEhWnd
.CommandBars.FindControl(ID:%57).Execute
' NE PAS EFFACER, même si le classeur est déjà ouvert !!!!!!
Workbooks.Open Classeur
If ActiveWorkbook.VBProject.Protection = vbext_pp_locked Then
SendKeys "~" & MdP & "~", True
.ActiveCodePane.Window.Close
End If
End With
SetForegroundWindow CurhWnd
Déprotège = True
Exit Function
Fin:
End Function
Sub test()
' Déprotection du projet VBA C:TempTest.xls (mot de passe "Zaza"),
' Ajout d'un module standard dans ce projet, puis rétablissement
' de la protection
Const Classeur = "C:TempTest.xls"
If Not Déprotège(Classeur, "zaza") Then
MsgBox "Erreur"
Else
MsgBox "Projet VBA déprotégé."
With Workbooks(Dir$(Classeur))
.VBProject.VBComponents.Add vbext_ct_StdModule
.Close True
End With
Workbooks.Open Classeur
MsgBox "Projet reprotégé, ajout d'un module standard."
End If
End Sub
'================================================ >
'Sub essai()
'Fichier = Workbooks("Classeur3.xls").FullName
'MsgBox Fichier
'End Sub
"Tucky" <Tucky@discussions.microsoft.com> a écrit dans le message de news:
A861FA83-18BE-4BDB-ACBB-7ED4B41FB062@microsoft.com...
Bonjour Jean-Francois,
Merci pour le lien ; mais de mon lieu de travail, une partie d'Internet
n'est pas accessible. Serait-il possible d'avoir une copie du fichier txt
sur
ce forum ou via "www.cjoint.com".
Merci d'avance.
Tucky
Salut Tucky,
voir ici:
http://frederic.sigonneau.free.fr/code/VBE/DeprotegeProjetVBA.txt
--
Amicalement
Jean-François Aubert
{Vaudois de la Côte Lémanique}
"Tucky" <Tucky@discussions.microsoft.com> a écrit dans le message de
news:
8028C7DB-DA8F-40AE-B495-A98BB9437EBF@microsoft.com...
Bonjour,
Je souhaiterai savoir si l'on peut dé-protéger un projet (si l'on
connait
le
mot de passe) via une macro.
Merci d'avance
Tucky
et un fichier .txt à la 9, un!
Attribute VB_Name = "DeprotegeProjetVBA"
'================================================ > 'Laurent Longre, mpfe
Private Declare Function FindWindowA Lib "User32" _
(ByVal lpClassName As String, _
ByVal lpWindowName As String) As Long
Private Declare Function GetForegroundWindow Lib "User32" () As Long
Private Declare Function SetForegroundWindow Lib "User32" _
(ByVal hWnd As Long) As Long
Function Déprotège(Classeur As String, MdP As String) As Boolean
Dim XLhWnd As Long, VBEhWnd As Long, CurhWnd As Long
Dim Wbk As Workbook
On Error Resume Next
Set Wbk = Workbooks(Dir$(Classeur))
On Error GoTo Fin
If Not Wbk Is Nothing Then
If Wbk.FullName <> Classeur Then Exit Function
If Not Wbk.Saved Then Wbk.Save
Else: Application.ScreenUpdating = False
End If
CurhWnd = GetForegroundWindow
XLhWnd = FindWindowA(vbNullString, Application.Caption)
With Application.VBE
VBEhWnd = FindWindowA(vbNullString, .MainWindow.Caption)
If CurhWnd = XLhWnd Then SetForegroundWindow VBEhWnd
.CommandBars.FindControl(ID:%57).Execute
' NE PAS EFFACER, même si le classeur est déjà ouvert !!!!!!
Workbooks.Open Classeur
If ActiveWorkbook.VBProject.Protection = vbext_pp_locked Then
SendKeys "~" & MdP & "~", True
.ActiveCodePane.Window.Close
End If
End With
SetForegroundWindow CurhWnd
Déprotège = True
Exit Function
Fin:
End Function
Sub test()
' Déprotection du projet VBA C:TempTest.xls (mot de passe "Zaza"),
' Ajout d'un module standard dans ce projet, puis rétablissement
' de la protection
Const Classeur = "C:TempTest.xls"
If Not Déprotège(Classeur, "zaza") Then
MsgBox "Erreur"
Else
MsgBox "Projet VBA déprotégé."
With Workbooks(Dir$(Classeur))
.VBProject.VBComponents.Add vbext_ct_StdModule
.Close True
End With
Workbooks.Open Classeur
MsgBox "Projet reprotégé, ajout d'un module standard."
End If
End Sub
'================================================ >
'Sub essai()
'Fichier = Workbooks("Classeur3.xls").FullName
'MsgBox Fichier
'End Sub
"Tucky" a écrit dans le message de news:Bonjour Jean-Francois,
Merci pour le lien ; mais de mon lieu de travail, une partie d'Internet
n'est pas accessible. Serait-il possible d'avoir une copie du fichier txt
sur
ce forum ou via "www.cjoint.com".
Merci d'avance.
TuckySalut Tucky,
voir ici:
http://frederic.sigonneau.free.fr/code/VBE/DeprotegeProjetVBA.txt
--
Amicalement
Jean-François Aubert
{Vaudois de la Côte Lémanique}
"Tucky" a écrit dans le message de
news:Bonjour,
Je souhaiterai savoir si l'on peut dé-protéger un projet (si l'on
connait
le
mot de passe) via une macro.
Merci d'avance
Tucky
Bonjour "Tucky",n'est pas accessible. Serait-il possible d'avoir une copie du fichier txt
sur
ci après.
Cordialement.
lSteph
'- -
Attribute VB_Name = "DeprotegeProjetVBA"
'================================================ > 'Laurent Longre, mpfe
Private Declare Function FindWindowA Lib "User32" _
(ByVal lpClassName As String, _
ByVal lpWindowName As String) As Long
Private Declare Function GetForegroundWindow Lib "User32" () As Long
Private Declare Function SetForegroundWindow Lib "User32" _
(ByVal hWnd As Long) As Long
Function Déprotège(Classeur As String, MdP As String) As Boolean
Dim XLhWnd As Long, VBEhWnd As Long, CurhWnd As Long
Dim Wbk As Workbook
On Error Resume Next
Set Wbk = Workbooks(Dir$(Classeur))
On Error GoTo Fin
If Not Wbk Is Nothing Then
If Wbk.FullName <> Classeur Then Exit Function
If Not Wbk.Saved Then Wbk.Save
Else: Application.ScreenUpdating = False
End If
CurhWnd = GetForegroundWindow
XLhWnd = FindWindowA(vbNullString, Application.Caption)
With Application.VBE
VBEhWnd = FindWindowA(vbNullString, .MainWindow.Caption)
If CurhWnd = XLhWnd Then SetForegroundWindow VBEhWnd
.CommandBars.FindControl(ID:%57).Execute
' NE PAS EFFACER, même si le classeur est déjà ouvert !!!!!!
Workbooks.Open Classeur
If ActiveWorkbook.VBProject.Protection = vbext_pp_locked Then
SendKeys "~" & MdP & "~", True
.ActiveCodePane.Window.Close
End If
End With
SetForegroundWindow CurhWnd
Déprotège = True
Exit Function
Fin:
End Function
Sub test()
' Déprotection du projet VBA C:TempTest.xls (mot de passe "Zaza"),
' Ajout d'un module standard dans ce projet, puis rétablissement
' de la protection
Const Classeur = "C:TempTest.xls"
If Not Déprotège(Classeur, "zaza") Then
MsgBox "Erreur"
Else
MsgBox "Projet VBA déprotégé."
With Workbooks(Dir$(Classeur))
.VBProject.VBComponents.Add vbext_ct_StdModule
.Close True
End With
Workbooks.Open Classeur
MsgBox "Projet reprotégé, ajout d'un module standard."
End If
End Sub
'================================================ >
'Sub essai()
'Fichier = Workbooks("Classeur3.xls").FullName
'MsgBox Fichier
'End Sub
Bonjour "Tucky",
n'est pas accessible. Serait-il possible d'avoir une copie du fichier txt
sur
ci après.
Cordialement.
lSteph
'- -
Attribute VB_Name = "DeprotegeProjetVBA"
'================================================ > 'Laurent Longre, mpfe
Private Declare Function FindWindowA Lib "User32" _
(ByVal lpClassName As String, _
ByVal lpWindowName As String) As Long
Private Declare Function GetForegroundWindow Lib "User32" () As Long
Private Declare Function SetForegroundWindow Lib "User32" _
(ByVal hWnd As Long) As Long
Function Déprotège(Classeur As String, MdP As String) As Boolean
Dim XLhWnd As Long, VBEhWnd As Long, CurhWnd As Long
Dim Wbk As Workbook
On Error Resume Next
Set Wbk = Workbooks(Dir$(Classeur))
On Error GoTo Fin
If Not Wbk Is Nothing Then
If Wbk.FullName <> Classeur Then Exit Function
If Not Wbk.Saved Then Wbk.Save
Else: Application.ScreenUpdating = False
End If
CurhWnd = GetForegroundWindow
XLhWnd = FindWindowA(vbNullString, Application.Caption)
With Application.VBE
VBEhWnd = FindWindowA(vbNullString, .MainWindow.Caption)
If CurhWnd = XLhWnd Then SetForegroundWindow VBEhWnd
.CommandBars.FindControl(ID:%57).Execute
' NE PAS EFFACER, même si le classeur est déjà ouvert !!!!!!
Workbooks.Open Classeur
If ActiveWorkbook.VBProject.Protection = vbext_pp_locked Then
SendKeys "~" & MdP & "~", True
.ActiveCodePane.Window.Close
End If
End With
SetForegroundWindow CurhWnd
Déprotège = True
Exit Function
Fin:
End Function
Sub test()
' Déprotection du projet VBA C:TempTest.xls (mot de passe "Zaza"),
' Ajout d'un module standard dans ce projet, puis rétablissement
' de la protection
Const Classeur = "C:TempTest.xls"
If Not Déprotège(Classeur, "zaza") Then
MsgBox "Erreur"
Else
MsgBox "Projet VBA déprotégé."
With Workbooks(Dir$(Classeur))
.VBProject.VBComponents.Add vbext_ct_StdModule
.Close True
End With
Workbooks.Open Classeur
MsgBox "Projet reprotégé, ajout d'un module standard."
End If
End Sub
'================================================ >
'Sub essai()
'Fichier = Workbooks("Classeur3.xls").FullName
'MsgBox Fichier
'End Sub
Bonjour "Tucky",n'est pas accessible. Serait-il possible d'avoir une copie du fichier txt
sur
ci après.
Cordialement.
lSteph
'- -
Attribute VB_Name = "DeprotegeProjetVBA"
'================================================ > 'Laurent Longre, mpfe
Private Declare Function FindWindowA Lib "User32" _
(ByVal lpClassName As String, _
ByVal lpWindowName As String) As Long
Private Declare Function GetForegroundWindow Lib "User32" () As Long
Private Declare Function SetForegroundWindow Lib "User32" _
(ByVal hWnd As Long) As Long
Function Déprotège(Classeur As String, MdP As String) As Boolean
Dim XLhWnd As Long, VBEhWnd As Long, CurhWnd As Long
Dim Wbk As Workbook
On Error Resume Next
Set Wbk = Workbooks(Dir$(Classeur))
On Error GoTo Fin
If Not Wbk Is Nothing Then
If Wbk.FullName <> Classeur Then Exit Function
If Not Wbk.Saved Then Wbk.Save
Else: Application.ScreenUpdating = False
End If
CurhWnd = GetForegroundWindow
XLhWnd = FindWindowA(vbNullString, Application.Caption)
With Application.VBE
VBEhWnd = FindWindowA(vbNullString, .MainWindow.Caption)
If CurhWnd = XLhWnd Then SetForegroundWindow VBEhWnd
.CommandBars.FindControl(ID:%57).Execute
' NE PAS EFFACER, même si le classeur est déjà ouvert !!!!!!
Workbooks.Open Classeur
If ActiveWorkbook.VBProject.Protection = vbext_pp_locked Then
SendKeys "~" & MdP & "~", True
.ActiveCodePane.Window.Close
End If
End With
SetForegroundWindow CurhWnd
Déprotège = True
Exit Function
Fin:
End Function
Sub test()
' Déprotection du projet VBA C:TempTest.xls (mot de passe "Zaza"),
' Ajout d'un module standard dans ce projet, puis rétablissement
' de la protection
Const Classeur = "C:TempTest.xls"
If Not Déprotège(Classeur, "zaza") Then
MsgBox "Erreur"
Else
MsgBox "Projet VBA déprotégé."
With Workbooks(Dir$(Classeur))
.VBProject.VBComponents.Add vbext_ct_StdModule
.Close True
End With
Workbooks.Open Classeur
MsgBox "Projet reprotégé, ajout d'un module standard."
End If
End Sub
'================================================ >
'Sub essai()
'Fichier = Workbooks("Classeur3.xls").FullName
'MsgBox Fichier
'End Sub