Visual Basic para Aplicaciones - autorizar uso de macro

Life is soft - evento anual de software empresarial
 
Vista:
sin imagen de perfil
Val: 4
Ha disminuido su posición en 6 puestos en Visual Basic para Aplicaciones (en relación al último mes)
Gráfica de Visual Basic para Aplicaciones

autorizar uso de macro

Publicado por JONATHAN GUTIERREZ (5 intervenciones) el 29/10/2006 15:21:19
Tengo una coleccion de Macros que pueden ser útiles en mi trabajo, pero me agradaria hacer un formulario para convertirla en ejecutable, solo que quisiera que al teclear el botón que llama a la macro que antes de ejecutarla me pida una contraseña para poderla usar, de no ser tecleada la contraseña, entonces me ponga un mensaje "solicita tu contraseña" o algo asi, agradeceré cualquier apoyo al respecto.

Desde ya muchas gracias por la atencion al presente
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:autorizar uso de macro

Publicado por JuanC (243 intervenciones) el 29/10/2006 22:04:15
Deberías hacer un complemento (.xla) y una secuencia de teclas
para habilitarlo o deshabilitarlo y que al momento de hacerlo, pida
una contraseña... No es tan difícil...

Una idea: al abrir el complemento registra un HotKey
y llama a Login pidiendo el password (un UserForm)
Al presionar Ctrl+M mostrará el UserForm para
des/habilitar y pedir password.

Private Sub Workbook_Open()
On Error Resume Next
Application.OnKey "^+{M}", "Login"
Login
End Sub

Al cerrar elimina el HotKey

Private Sub Workbook_BeforeClose(Cancel As Boolean)
On Error Resume Next
Application.OnKey "^+{M}"
End Sub

Saludos desde Baires, JuanC
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:autorizar uso de macro

Publicado por Eider Mauricio (2 intervenciones) el 02/11/2006 18:50:09
podrias hacerlo escribiendo la clave en el código fuente por ejemplo:

Private Function validarMacro()
Dim strClave As String
strClave = InputBox("Digite la clave: ")
If (strClave = "P@ssw0rd") Then
''EjecutarMacro
Else
MsgBox "Password incorrecto"
End If
End Function

podrias leer strClave desde un formulario de registro mejor para evitar ver la clave, tambien podrias almacenar la clave en una base de datos acces y leerla desde access para no tener que quemarla en el codigo fuente.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar