Ver Mensaje Individual
  #5 (permalink)  
Antiguo 27/07/2010, 10:31
Avatar de hugo180486
hugo180486
 
Fecha de Ingreso: septiembre-2007
Mensajes: 199
Antigüedad: 17 años, 2 meses
Puntos: 3
Respuesta: [ Excel VBA ] Quitar contraseña en tiempo de ejecucion (conociendo la cont

Si seguro es eso... Intentare cuando llegeue a mi casa para no tener reestrcciones.. Gracias...

Encontre lo siguiente:

Código vb:
Ver original
  1. Sub Proteger_VBProject(ByRef wbExcel As Workbook, ByVal sPassword As String)
  2.  
  3. Dim vbProj As Object
  4.  
  5. Set vbProj = wbExcel.VBProject
  6.  
  7. 'can't do it if already locked!
  8. If vbProj.Protection = 1 Then Exit Sub
  9.  
  10. Set Application.VBE.ActiveVBProject = vbProj
  11.  
  12. ' now use lovely SendKeys to set the project password
  13. SendKeys "+{TAB}{RIGHT}%V{+}{TAB}" & sPassword & "{TAB}" & _
  14. sPassword & "~"
  15.  
  16. Application.VBE.CommandBars(1).FindControl(id:=2578, recursive:=True).Execute
  17.  
  18. Set vbProj = Nothing
  19.  
  20. End Sub
  21.  
  22. Sub Desproteger_VBProject(ByRef wbExcel As Workbook, ByVal sPassword As String)
  23.  
  24. Dim vbProj As Object
  25.  
  26. Set vbProj = wbExcel.VBProject
  27.  
  28. 'can't do it if already unlocked!
  29. If Not vbProj.Protection = 1 Then Exit Sub
  30.  
  31. Set Application.VBE.ActiveVBProject = vbProj
  32.  
  33. ' now use lovely SendKeys to quote the project password
  34. SendKeys sPassword & "~~"
  35. Application.VBE.CommandBars(1).FindControl(id:=2578, recursive:=True).Execute
  36.  
  37. Set vbProj = Nothing
  38.  
  39. End Sub

Encontre el siguiente el codigo es de estaa pagina:
http://www.pcreview.co.uk/forums/thread-987585.php

Si funciona bien, desprotege tal como yo queria, y ya no me marca error, el detalle es al protegerlo, si tu llamas al procedimiento de Proteger despues guardas y abres el libro, si esta protegiodo, te pide la contrase;a como debiera de ser, es decir la contrase;a que pide al intentar expandir el explorador de proyectos, osea que si funcioan.

Pero el detalle es si llamas al procedimiento de proteger, y despues infresas al Edidor de Visual Basic, ene se caso no te pide la contrase;a y el proyecto queda expuesto, y es lo que no quiero... Por que hara esto?

AProvecho para preguntarte Abrhama si eres tana amable, sabes si el Excel se puede configurar para que no puedan entrar al Editor de Visual Basic, o solo ciertas perosnas puedan hacerlo?

Saludos, posteo el codigo por si alguien le sirve asi...,

PD, el ejemplo que me pasaste lo reviso mas noche, pues aui no puedo, y la verdad si quiero solucionar esto de ya... Gracias...