Pour d=E9prot=E9ger temporairement un projet, j'utilise ceci, trouv=E9 sur
ce forum:
Sub UnprotectVBProject(WB As Workbook, ByVal Password As String)
Dim vbProj As Object
Set vbProj =3D WB.VBProject
If vbProj.Protection <> 1 Then Exit Sub
Set Application.VBE.ActiveVBProject =3D vbProj
SendKeys Password & "~~~"
Application.VBE.CommandBars(1).FindControl(ID:=3D2578,
recursive:=3DTrue).Execute
End Sub
Sub Test()
UnprotectVBProject Workbooks("MonFichier.xls"), "Lemotdepasse"
DoEvents
End Sub
Le probl=E8me, c'est que la bo=EEte de dialogue "VBAProject - Propri=E9t=E9=
s
du projet" apparait pendant quelques secondes, et =E7a ne fait pas
"propre". Pourrait-on l'=E9viter ?
Bonsour® DoMi avec ferveur ;o))) vous nous disiez :
Bonjour,
Pour déprotéger temporairement un projet, j'utilise ceci, trouvé sur ce forum:
Sub UnprotectVBProject(WB As Workbook, ByVal Password As String) Dim vbProj As Object Set vbProj = WB.VBProject If vbProj.Protection <> 1 Then Exit Sub Set Application.VBE.ActiveVBProject = vbProj SendKeys Password & "~~~" Application.VBE.CommandBars(1).FindControl(ID:%78, recursive:=True).Execute End Sub
Sub Test() UnprotectVBProject Workbooks("MonFichier.xls"), "Lemotdepasse" DoEvents End Sub
Le problème, c'est que la boîte de dialogue "VBAProject - Propriétés du projet" apparait pendant quelques secondes, et ça ne fait pas "propre". Pourrait-on l'éviter ?
en début de proc Unprotect : Application.ScreenUpdating úlse
-- -- @+ ;o)))
Bonsour® DoMi avec ferveur ;o))) vous nous disiez :
Bonjour,
Pour déprotéger temporairement un projet, j'utilise ceci, trouvé sur
ce forum:
Sub UnprotectVBProject(WB As Workbook, ByVal Password As String)
Dim vbProj As Object
Set vbProj = WB.VBProject
If vbProj.Protection <> 1 Then Exit Sub
Set Application.VBE.ActiveVBProject = vbProj
SendKeys Password & "~~~"
Application.VBE.CommandBars(1).FindControl(ID:=2578,
recursive:=True).Execute
End Sub
Sub Test()
UnprotectVBProject Workbooks("MonFichier.xls"), "Lemotdepasse"
DoEvents
End Sub
Le problème, c'est que la boîte de dialogue "VBAProject - Propriétés
du projet" apparait pendant quelques secondes, et ça ne fait pas
"propre". Pourrait-on l'éviter ?
en début de proc Unprotect :
Application.ScreenUpdating =False
Bonsour® DoMi avec ferveur ;o))) vous nous disiez :
Bonjour,
Pour déprotéger temporairement un projet, j'utilise ceci, trouvé sur ce forum:
Sub UnprotectVBProject(WB As Workbook, ByVal Password As String) Dim vbProj As Object Set vbProj = WB.VBProject If vbProj.Protection <> 1 Then Exit Sub Set Application.VBE.ActiveVBProject = vbProj SendKeys Password & "~~~" Application.VBE.CommandBars(1).FindControl(ID:%78, recursive:=True).Execute End Sub
Sub Test() UnprotectVBProject Workbooks("MonFichier.xls"), "Lemotdepasse" DoEvents End Sub
Le problème, c'est que la boîte de dialogue "VBAProject - Propriétés du projet" apparait pendant quelques secondes, et ça ne fait pas "propre". Pourrait-on l'éviter ?
en début de proc Unprotect : Application.ScreenUpdating úlse
-- -- @+ ;o)))
DoMi
Merci, mais Application.ScreenUpdating est déjà à False...
Par contre, si je le remettais à True avant DoEvents, quitte à le remettre à False après, ça serait mieux, n'est-ce pas ?...
Merci de m'avoir mis sur la piste !
Merci, mais Application.ScreenUpdating est déjà à False...
Par contre, si je le remettais à True avant DoEvents, quitte à le
remettre à False après, ça serait mieux, n'est-ce pas ?...
Merci, mais Application.ScreenUpdating est déjà à False...
Par contre, si je le remettais à True avant DoEvents, quitte à le remettre à False après, ça serait mieux, n'est-ce pas ?...
Merci de m'avoir mis sur la piste !
MichDenis
Quoique tu fasses, je ne crois pas que cela changera grand chose à ta problématique...j'espère cependant que tu viendras nous le dire si tu trouves la solution ! ;-)
"DoMi" a écrit dans le message de news: Merci, mais Application.ScreenUpdating est déjà à False...
Par contre, si je le remettais à True avant DoEvents, quitte à le remettre à False après, ça serait mieux, n'est-ce pas ?...
Merci de m'avoir mis sur la piste !
Quoique tu fasses, je ne crois pas que cela changera grand chose
à ta problématique...j'espère cependant que tu viendras nous le
dire si tu trouves la solution ! ;-)
"DoMi" <do.mi@aliceadsl.fr> a écrit dans le message de news: 33cbfc52-fd75-4ab7-bfc4-8fb6760c1a25@2g2000hsn.googlegroups.com...
Merci, mais Application.ScreenUpdating est déjà à False...
Par contre, si je le remettais à True avant DoEvents, quitte à le
remettre à False après, ça serait mieux, n'est-ce pas ?...
Quoique tu fasses, je ne crois pas que cela changera grand chose à ta problématique...j'espère cependant que tu viendras nous le dire si tu trouves la solution ! ;-)
"DoMi" a écrit dans le message de news: Merci, mais Application.ScreenUpdating est déjà à False...
Par contre, si je le remettais à True avant DoEvents, quitte à le remettre à False après, ça serait mieux, n'est-ce pas ?...
Merci de m'avoir mis sur la piste !
Excel...lent
Bonjour,
Désolé DoMi de m'insérer dans ton fil mais la question que j'ai à poser est directement liée au code que tu utilise.
J'utilise déjà cet Excellent code de Bill Manville que j'ai trouvé sur site de Fred Sigonneau. J'ai constaté la même chose que DoMi mais franchement c'est de l'ordre du 0,1 seconde donc pas gênant. Par contre quand on referme le classeur dont le projet est protégé, la protection demeure. Cad qu'à l'ouverture suivante le projet est de nouveau verrouillé. est-il possible de rajouter quelquechose au code de Bill pour que dans l'onglet "Protection" de la fenetre "Vba Project - Propriétés du projet" : 1 - "Verouiller le projet pour l'affichage" soit décoché 2 - Les champs "Mot de Passe" et "Confirmation du Mot de passe" soit vide.
Merci de votre aide
Cordialement.
Excel...lent
N'hésitez pas à visiter ces mines d'or ! ! ! http://www.excelabo.net/ http://xlwiki.free.fr/wiki/wakka.php?wiki=PageAccueil http://frederic.sigonneau.free.fr/ http://dj.joss.free.fr/ http://www.cathyastuce.com/excel.htm http://jacxl.free.fr/cours_xl/cadres.html?ex http://www.dualforum.com/ http://www.excel-downloads.com/forum/forum-excel/
Bonjour,
Désolé DoMi de m'insérer dans ton fil mais la question que j'ai à poser est
directement liée au code que tu utilise.
J'utilise déjà cet Excellent code de Bill Manville que j'ai trouvé sur site
de Fred Sigonneau.
J'ai constaté la même chose que DoMi mais franchement c'est de l'ordre du
0,1 seconde donc pas gênant.
Par contre quand on referme le classeur dont le projet est protégé, la
protection demeure. Cad qu'à l'ouverture suivante le projet est de nouveau
verrouillé.
est-il possible de rajouter quelquechose au code de Bill pour que dans
l'onglet "Protection" de la fenetre "Vba Project - Propriétés du projet" :
1 - "Verouiller le projet pour l'affichage" soit décoché
2 - Les champs "Mot de Passe" et "Confirmation du Mot de passe" soit vide.
Merci de votre aide
Cordialement.
Excel...lent
N'hésitez pas à visiter ces mines d'or ! ! !
http://www.excelabo.net/
http://xlwiki.free.fr/wiki/wakka.php?wiki=PageAccueil
http://frederic.sigonneau.free.fr/
http://dj.joss.free.fr/
http://www.cathyastuce.com/excel.htm
http://jacxl.free.fr/cours_xl/cadres.html?ex http://www.dualforum.com/
http://www.excel-downloads.com/forum/forum-excel/
Désolé DoMi de m'insérer dans ton fil mais la question que j'ai à poser est directement liée au code que tu utilise.
J'utilise déjà cet Excellent code de Bill Manville que j'ai trouvé sur site de Fred Sigonneau. J'ai constaté la même chose que DoMi mais franchement c'est de l'ordre du 0,1 seconde donc pas gênant. Par contre quand on referme le classeur dont le projet est protégé, la protection demeure. Cad qu'à l'ouverture suivante le projet est de nouveau verrouillé. est-il possible de rajouter quelquechose au code de Bill pour que dans l'onglet "Protection" de la fenetre "Vba Project - Propriétés du projet" : 1 - "Verouiller le projet pour l'affichage" soit décoché 2 - Les champs "Mot de Passe" et "Confirmation du Mot de passe" soit vide.
Merci de votre aide
Cordialement.
Excel...lent
N'hésitez pas à visiter ces mines d'or ! ! ! http://www.excelabo.net/ http://xlwiki.free.fr/wiki/wakka.php?wiki=PageAccueil http://frederic.sigonneau.free.fr/ http://dj.joss.free.fr/ http://www.cathyastuce.com/excel.htm http://jacxl.free.fr/cours_xl/cadres.html?ex http://www.dualforum.com/ http://www.excel-downloads.com/forum/forum-excel/
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 & "~"
Quoique tu fasses, je ne crois pas que cela changera grand chose � ta probl�matique...j'esp�re cependant que tu vi endras nous le dire si tu trouves la solution ! ;-)
"DoMi" a �crit dans le message de news: 33cb Merci, mais Application.ScreenUpdating est d�j� � False...
Par contre, si je le remettais � True avant DoEvents, quitte ï ¿½ le remettre � False apr�s, �a serait mieux, n'est-ce pas ?...
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 & "~"
Quoique tu fasses, je ne crois pas que cela changera grand chose
� ta probl�matique...j'esp�re cependant que tu vi endras nous le
dire si tu trouves la solution ! ;-)
"DoMi" <do.mi@aliceadsl.fr> a �crit dans le message de news: 33cb fc52-fd75-4ab7-bfc4-8fb6760c1a25@2g2000hsn.googlegroups.com...
Merci, mais Application.ScreenUpdating est d�j� � False...
Par contre, si je le remettais � True avant DoEvents, quitte ï ¿½ le
remettre � False apr�s, �a serait mieux, n'est-ce pas ?...
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 & "~"
Quoique tu fasses, je ne crois pas que cela changera grand chose � ta probl�matique...j'esp�re cependant que tu vi endras nous le dire si tu trouves la solution ! ;-)
"DoMi" a �crit dans le message de news: 33cb Merci, mais Application.ScreenUpdating est d�j� � False...
Par contre, si je le remettais � True avant DoEvents, quitte ï ¿½ le remettre � False apr�s, �a serait mieux, n'est-ce pas ?...
Merci de m'avoir mis sur la piste !
MichDenis
J'ai utilisé ceci , comme suggéré : '------------------------------- Sub test() Application.ScreenUpdating = False UnprotectVBProject Workbooks("MonClasseur.xls"), "denis" Application.ScreenUpdating = True DoEvents Application.ScreenUpdating = False End Sub '-------------------------------
J'ai lié cette macro à un bouton de commande émanant de la boîte à outils formulaire et, à chaque fois, je perçois toujours un très court instant la fenêtre. C'est vrai que l'ordi utilisé est lent ... mais le principe demeure quand même !
Je dois avoir un environnement particulier ! ;-)
J'ai utilisé ceci , comme suggéré :
'-------------------------------
Sub test()
Application.ScreenUpdating = False
UnprotectVBProject Workbooks("MonClasseur.xls"), "denis"
Application.ScreenUpdating = True
DoEvents
Application.ScreenUpdating = False
End Sub
'-------------------------------
J'ai lié cette macro à un bouton de commande émanant de la boîte à
outils formulaire et, à chaque fois, je perçois toujours un très court instant la fenêtre.
C'est vrai que l'ordi utilisé est lent ... mais le principe demeure quand même !
J'ai utilisé ceci , comme suggéré : '------------------------------- Sub test() Application.ScreenUpdating = False UnprotectVBProject Workbooks("MonClasseur.xls"), "denis" Application.ScreenUpdating = True DoEvents Application.ScreenUpdating = False End Sub '-------------------------------
J'ai lié cette macro à un bouton de commande émanant de la boîte à outils formulaire et, à chaque fois, je perçois toujours un très court instant la fenêtre. C'est vrai que l'ordi utilisé est lent ... mais le principe demeure quand même !
Je dois avoir un environnement particulier ! ;-)
Excel...lent
Salut Denis, Content de te lire. merci pout la modif proposée. Je prends ! C'est dommage qu'on ne puisse pas supprimer le code des champs car à l'ouverture qui suit le mp est demandé de nouveau. Coordialement. Marc
Salut Denis,
Content de te lire.
merci pout la modif proposée.
Je prends !
C'est dommage qu'on ne puisse pas supprimer le code des champs car à
l'ouverture qui suit le mp est demandé de nouveau.
Coordialement.
Marc
Salut Denis, Content de te lire. merci pout la modif proposée. Je prends ! C'est dommage qu'on ne puisse pas supprimer le code des champs car à l'ouverture qui suit le mp est demandé de nouveau. Coordialement. Marc
DoMi
Oui, c'est vraiment un court instant !
J'ai toujours la deuxième partie de mon problème en suspens. Si j'utilise la Sub de Bill Manville : 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 & "~"
le projet est théoriquement protégé (propriétés de VAProject : la case verrouiller le projet pour affichage est cochée, et le mot de passe est noté ********) mais tout est accessible. Je voudrais qu'on ne puisse plus accéder au code.
Merci.
MichDenis a écrit :
J'ai utilisé ceci , comme suggéré : '------------------------------- Sub test() Application.ScreenUpdating = False UnprotectVBProject Workbooks("MonClasseur.xls"), "denis" Application.ScreenUpdating = True DoEvents Application.ScreenUpdating = False End Sub '-------------------------------
J'ai lié cette macro à un bouton de commande émanant de la boîte à outils formulaire et, à chaque fois, je perçois toujours un très co urt instant la fenêtre. C'est vrai que l'ordi utilisé est lent ... mais le principe demeure qua nd même !
Je dois avoir un environnement particulier ! ;-)
Oui, c'est vraiment un court instant !
J'ai toujours la deuxième partie de mon problème en suspens. Si
j'utilise la Sub de Bill Manville :
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 & "~"
le projet est théoriquement protégé (propriétés de VAProject : la case
verrouiller le projet pour affichage est cochée, et le mot de passe
est noté ********) mais tout est accessible.
Je voudrais qu'on ne puisse plus accéder au code.
Merci.
MichDenis a écrit :
J'ai utilisé ceci , comme suggéré :
'-------------------------------
Sub test()
Application.ScreenUpdating = False
UnprotectVBProject Workbooks("MonClasseur.xls"), "denis"
Application.ScreenUpdating = True
DoEvents
Application.ScreenUpdating = False
End Sub
'-------------------------------
J'ai lié cette macro à un bouton de commande émanant de la boîte à
outils formulaire et, à chaque fois, je perçois toujours un très co urt instant la fenêtre.
C'est vrai que l'ordi utilisé est lent ... mais le principe demeure qua nd même !
J'ai toujours la deuxième partie de mon problème en suspens. Si j'utilise la Sub de Bill Manville : 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 & "~"
le projet est théoriquement protégé (propriétés de VAProject : la case verrouiller le projet pour affichage est cochée, et le mot de passe est noté ********) mais tout est accessible. Je voudrais qu'on ne puisse plus accéder au code.
Merci.
MichDenis a écrit :
J'ai utilisé ceci , comme suggéré : '------------------------------- Sub test() Application.ScreenUpdating = False UnprotectVBProject Workbooks("MonClasseur.xls"), "denis" Application.ScreenUpdating = True DoEvents Application.ScreenUpdating = False End Sub '-------------------------------
J'ai lié cette macro à un bouton de commande émanant de la boîte à outils formulaire et, à chaque fois, je perçois toujours un très co urt instant la fenêtre. C'est vrai que l'ordi utilisé est lent ... mais le principe demeure qua nd même !
Je dois avoir un environnement particulier ! ;-)
Excel...lent
Salut Denis,
Comme toujours ca fonctionne. Impec ! Thanks a lot. Marc
Salut Denis,
Comme toujours ca fonctionne.
Impec !
Thanks a lot.
Marc