Home |
Search |
Today's Posts |
#1
Posted to microsoft.public.excel.programming
|
|||
|
|||
Programming to VBE
Hi Ajit
Only with Sendkeys it is possible Read this 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 -- Regards Ron de Bruin http://www.rondebruin.nl "Ajit" wrote in message ... I am working on a situation where there are couple of hundred excel templates with forms , modules etc. And i need to make a global change in the code to one of the procedure. I found some valuable information at www.cpearson.com which helped me pragramme to the Visual basic editor. What i am doing is : I am opening the required template, finding the procedure which needs to be replaced , deleting that procedure and adding a new procedure with same name but different code. All works well....except when VBE project is protected. Could someone suggest a wayout to unprotect the project at runtime ...make the required changes and then again protect the project before saving it. Suggestions will be highly appreciated. Thanks -- Ajit |
Thread Tools | Search this Thread |
Display Modes | |
|
|
Similar Threads | ||||
Thread | Forum | |||
programming | Excel Discussion (Misc queries) | |||
Programming help | Excel Discussion (Misc queries) | |||
Programming to VBE | Excel Programming | |||
vba programming | Excel Programming | |||
Do I need programming for this? | Excel Programming |