![]() |
Protect\Unprotect VBA project
Hello All,
Is it possible to protect\unprotect a VBA project using code in Excel 97 or above? I am looking for similar functionality as protecting\unprotecting a worksheet\workbook. Thanks, Rohit Thomas |
Protect\Unprotect VBA project
Rohit,
Other than using SendKeys, you cannot protect/unprotect a VBProject using code. -- Cordially, Chip Pearson Microsoft MVP - Excel www.cpearson.com "Rohit Thomas" wrote in message ... Hello All, Is it possible to protect\unprotect a VBA project using code in Excel 97 or above? I am looking for similar functionality as protecting\unprotecting a worksheet\workbook. Thanks, Rohit Thomas |
Protect\Unprotect VBA project
Here is a example with unreliable Sendkeys
Old post from Bill Manville ------------------------ You will need to use SendKeys to unprotect the project(s) and reprotect after replacing the modules. Here's something to get you started: Sub TestProtect() Workbooks.Add.SaveAs "C:\Temp\Book1.xls" ProtectVBProject Workbooks("Book1.xls"), "Jack" Workbooks("Book1.xls").Close True End Sub Sub TestUnprotect() Workbooks.Open "C:\Temp\Book1.xls" UnprotectVBProject Workbooks("Book1.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:=257 8, 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:=257 8, recursive:=True).Execute WB.Save End Sub Bill Manville MVP - Microsoft Excel, Oxford, England No email replies please - reply in newsgroup -- Regards Ron de Bruin (Win XP Pro SP-1 XL2002 SP-2) www.rondebruin.nl "Chip Pearson" wrote in message ... Rohit, Other than using SendKeys, you cannot protect/unprotect a VBProject using code. -- Cordially, Chip Pearson Microsoft MVP - Excel www.cpearson.com "Rohit Thomas" wrote in message ... Hello All, Is it possible to protect\unprotect a VBA project using code in Excel 97 or above? I am looking for similar functionality as protecting\unprotecting a worksheet\workbook. Thanks, Rohit Thomas |
All times are GMT +1. The time now is 05:40 PM. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
ExcelBanter.com