Macro para abrir editor de VB

Buen día. Mi consulta es la siguiente:
Tengo una macro que, cuando se ejecuta desde mi usuario (detecta el usuario desde el cual se ejecuta, por supuesto) realiza determinadas acciones que facilita la manipulación del libro de Excel.
Por una cuestión de practicidad necesito que también automáticamente abra el editor de VB y, si es posible, desbloquee el proyecto que se encuentra con contraseña (por supuesto, conozco la misma, ya que soy el autor del proyecto).
Entiendo que se puede abrir el editor presionando ALT + F11. Es solo un detalle que quiero agregarle, si es que se puede.
Desde ya, muchas gracias por vuestra ayuda. He aprendido mucho de VB para Excel gracias a Uds. Saludos.

1 Respuesta

Respuesta
1
Supongo que hay otra solución pero se me ocurre mandar una combinación de teclas con el método Senkey
SendKeys {%F11}
Eso simula que presionas dichas teclas.
Estimado verifica este link donde detallan el procedimiento, creo que es lo que necesitas
http://www.ayudaexcel.com/foro/showthread.php?t=17339?s=
'************************************************************************************ '***** NOMBRE: UnprotectVBProject '***** TIPO: Sub Procedimiento '***** OBJETIVO: Desprotege el proyecto '***** PARAMETROS: WB - Libro a desproteger '***** Password - Contraseña de protección del libro Sub UnprotectVBProject(WB As Workbook, ByVal Password As String) 'VARIABLES DEL PROYECTO Dim vbp As VBProject, oWin As VBIDE.Window Set vbp = WB.VBProject 'VARIABLES DEL LIBRO Dim wbActive As Workbook Set wbActive = ActiveWorkbook 'CONTADOR A USAR Dim i As Integer 'SI EL LIBRO NO ESTÁ PROTEGIDO SALE DEL PROCEDIMIENTO If vbp.Protection <> vbext_pp_locked Then Exit Sub End If 'MUESTRA EL LIBRO DEL PROYECTO WB.Activate 'SEN ENVIAN LA TECLAS PARA EL DESBLOQUEO Application.OnKey "%{F11}" SendKeys "%{F11}%TE" & Password & "~~%{F11}", True 'SI FALLA AL DESBLOQUEAR If vbp.Protection = vbext_pp_locked Then MsgBox "Fallo al desproteger el proyecto" End If 'MUESTRA EL LIBRO ACTIVO wbActive.Activate End Sub '************************************************************************************ '***** NOMBRE: protectVBProject '***** TIPO: Sub Procedimiento '***** OBJETIVO: Protege el proyecto '***** PARAMETROS: WB - Libro a desproteger '***** Password - Contraseña de protección del libro Sub protectVBProject(WB As Workbook, ByVal Password As String) 'VARIABLES DE PROYECTO Dim vbp As VBProject, oWin As VBIDE.Window Set vbp = WB.VBProject 'LIBRO A USAR Dim wbActive As Workbook Set wbActive = ActiveWorkbook 'CONTADOR A USAR Dim i As Integer 'SI EL PROYECTO NO ESTÁ PROTEGIDO SALE DEL PROCESO If vbp.Protection <> vbext_pp_locked Then Exit Sub End If 'ACTIVA EL PROYECTO WB.Activate 'SE ENVÍA LA SECUENCIA DE TECLAS PARA PROTEGER EL PROYECTO Application.OnKey "%{F11}" SendKeys "%{f11}^r%hp^{pgdn}{+}{tab}" & Password & "{tab}" & Password & "~%q", True 'SI HUBO ERROR AL PROTEGER MANDA UN ERROR If vbp.Protection = vbext_pp_none Then MsgBox "Fallo al Proteger el Proyecto" End If 'REGRESA AL LIBRO ACTIVO wbActive.Activate End Sub

Añade tu respuesta

Haz clic para o