** NORMAS DEL FORO **
Inicio del foro Inicio del foro > Otros de Microsoft: Windows y Office > Excel
  Mensajes nuevos Mensajes nuevos RSS - Está VBAProject bloqueado?
  Preguntas frecuentes Preguntas frecuentes  Buscar en el foro   Eventos   Registro Registro  Iniciar sesion Iniciar sesion

Tema cerradoEstá VBAProject bloqueado?

 Responder Responder
Autor
Mensaje
Gladiador Ver desplegable
Habitual
Habitual
Avatar

Unido: 22/Junio/2006
Localización: Venezuela
Estado: Sin conexión
Puntos: 87
Enlace directo a este mensaje Tema: Está VBAProject bloqueado?
    Enviado: 18/Marzo/2017 a las 16:26
Hola nuevamente.
Quisiera su ayuda para desarrollar una macro que me permita verificar si el VBAProject está bloqueado o protegido. Esto con el fin de que algunas macros solo se ejecuten si el VBAProject está desbloqueado.

Gracias

Gladiador
Arriba
AnSanVal Ver desplegable
Administrador
Administrador
Avatar

Unido: 16/Marzo/2005
Localización: España
Estado: Sin conexión
Puntos: 4949
Enlace directo a este mensaje Enviado: 19/Marzo/2017 a las 20:27
Confused   Esta no la entiendo. Si has bloqueado el proyecto... ¡Está bloqueado!, y si no lo has bloqueado... pues no lo está.

No es como una hoja protegida o no, puede que algunas hojas lo estén y otras no, pero VBA...


Pero en fin, yo no he tenido nunca esa necesidad ni esa curiosidad. ¡No se como hacerlo! y no tengo interés en indagar, lo siento.



Pregunta lo que no sabes, recuérdalo para cuando te pregunten y ofrece tu ayuda (reconforta).

Mi sitio_web con ejemplos Excel.
Arriba
lbauluz Ver desplegable
Administrador
Administrador
Avatar

Unido: 29/Marzo/2005
Localización: Alcalá Meco
Estado: Sin conexión
Puntos: 2888
Enlace directo a este mensaje Enviado: 19/Marzo/2017 a las 23:32
Hasta donde o se, aunque nunca lo he probado de esa forma, necesitas

Instalar Microsoft Visual Basic for Aplications Extensibilty 5.3 (Herramientas-> referencias ->esta librería)

Definirte una variable que apunte al proyecto (CREO)  VBIDE.VBProject
dim x as  VBIDE.VBProject, por ejemplo

Asociarla al proyecto
Y verificar con 
if X.Proteccion = 0 then...


Pero vamos, que estoy recordando únicamente de una aplicación para sacar el código, no sé si realmente es así en este caso

Prueba y nos avisas

Un saludo.

Luis


Quod natura non dat, Salmantica non præstat
Arriba
Mago Ver desplegable
Asiduo
Asiduo
Avatar

Unido: 15/Marzo/2006
Estado: Sin conexión
Puntos: 234
Enlace directo a este mensaje Enviado: 21/Marzo/2017 a las 17:00
Hola Gladiador.

Acá hay un hilo con una respuesta para el tema:


... no lo he probado.  Revísalo y nos cuentas



Editado por Mago - 21/Marzo/2017 a las 17:00
Arriba
Gladiador Ver desplegable
Habitual
Habitual
Avatar

Unido: 22/Junio/2006
Localización: Venezuela
Estado: Sin conexión
Puntos: 87
Enlace directo a este mensaje Enviado: 01/Abril/2017 a las 01:24
Hola amigos, muchas gracias por el tiempo que han tomado en ayudarme con mi inquietud

Ibanluz, Muy interesante tu punto y eso e ha hecho investigar un poco.

He construido este par de macros, pero siempre me da error. Agradecería cualquier ayuda
Las macros son:

Sub ProyectoPrueba()
Dim x As VBIDE.VBProject
x = Inca 'Este es el nombre del proyesto, definido en la ventana de  Poject Properties
If x.Protection = vbext_pp_none Then
MsgBox "No está protegido"
End If

El error que me da es el siguiente:

"Run time error '91':
"Object variable or With block not set"
No entiendo nada
Cuando le pido Debug Sombrea de amarillo  x = Inca


La otra macro que construí sigue a continuación. La hice para saber que proyecto toma, pues e mi editor de Visual Basic, siempre tengo listados, en el arbol, varios proyectos (Personal/funcres/atpvbaen_xls/Inca):

Sub OtroProyecto()

Dim Gladiador As String

Gladiador = Application.VBE.VBProjects(1).VBComponents(1).Name

MsgBox "nombre del proyecto es:    " & Gladiador

End Sub

El error que me da es el siguiente:

"Run-time error '104':
"Programmatic access to Visual Basic Project is not trusted"

Entiendo menos.

Cuando pido Debug me aparece sombreado Gladiador = Application.VBE.VBProjects(1).Name

Gracias por la ayuda
Arriba
prga Ver desplegable
Moderador
Moderador


Unido: 16/Noviembre/2004
Localización: España
Estado: Sin conexión
Puntos: 2831
Enlace directo a este mensaje Enviado: 01/Abril/2017 a las 13:26
Hola.
Prueba  de ir a Archivo-opciones-Centro de confianza-Configuración  centro de confianza-configuración de macros y marca la casilla 'Confiar en el acceso al modelo de objetos de proyectos de VBA'
Espero que sea esto el problema.
Ya comentas.
Un saludo a todos
Arriba
lbauluz Ver desplegable
Administrador
Administrador
Avatar

Unido: 29/Marzo/2005
Localización: Alcalá Meco
Estado: Sin conexión
Puntos: 2888
Enlace directo a este mensaje Enviado: 07/Abril/2017 a las 19:16
Te falta la extension que he indicado yo mas arriba

Luis
Quod natura non dat, Salmantica non præstat
Arriba
Gladiador Ver desplegable
Habitual
Habitual
Avatar

Unido: 22/Junio/2006
Localización: Venezuela
Estado: Sin conexión
Puntos: 87
Enlace directo a este mensaje Enviado: 10/Abril/2017 a las 16:21
Publicado originalmente por lbauluz lbauluz escribió:

Te falta la extension que he indicado yo mas arriba

Luis

Hola Ibanluz, gracias por tu tiempo. 
Nose a que extensión haces referencia. Si te refieres a Instalar Microsoft Visual Basic for Aplications Extensibilty 5.3 eso ya lo hice.
Gracias
Arriba
lbauluz Ver desplegable
Administrador
Administrador
Avatar

Unido: 29/Marzo/2005
Localización: Alcalá Meco
Estado: Sin conexión
Puntos: 2888
Enlace directo a este mensaje Enviado: 10/Abril/2017 a las 19:09
Pues si, me refer'ia a eso... a mi con eso me quito el error... salvo que lo que no encuentre es "inca", mira a ver en debug si tiene algun valor o si esta definido... asi al menos sabremos por donde van los tiros

Un saludo.

Luis

PD: Perdon por los acentos, teclado en ingles

Quod natura non dat, Salmantica non præstat
Arriba
Gladiador Ver desplegable
Habitual
Habitual
Avatar

Unido: 22/Junio/2006
Localización: Venezuela
Estado: Sin conexión
Puntos: 87
Enlace directo a este mensaje Enviado: 14/Junio/2017 a las 18:26
Hola, disculpen mi olvido.
NO puede hacer lo que me proponía, por lo que desistí.
Gracias por el tiempo que se han tomado.
Se puede cerrar el hilo

Gladiador
Arriba
 Responder Responder
  Compartir tema   

Ir al foro Permisos de foro Ver desplegable