.
En este post anteriores se mostró como determinar el número de serie de la PC, como dar acceso al archivo dependiendo del número de serie de la PC; en este post se muestra como darle utilidad a lo aprendido, es decir se presenta una macro que lee el número de serie de la PC y muestra hojas si es una PC autorizada.
Recomiendo leer un excelente libro sobre Excel que te ayudará operar las planillas u hojas de cálculo, haz click acá, si quieres aprender sobre Excel, en inglés, entonces debes hacer click here. Si lo que necesitas es aprender o profundizar sobre la programación de macros con VBA este es unos de los mejores cursos on line que he visto en internet.
El ejemplo consiste en que la macro leea el número de serie de la PC donde se está ejecutando el archivo, si coincide con el número de serie precargado en la macro, da acceso al libro mostrando las hojas ocultas, en caso de que la PC no esté autorizada cierra el libro ocultando las hojas.
El libro al cerrarse oculta las hojas con el método que solo es posible mostrarlas con código, no es factible mostrar las hojas desde las opciones que posee Excel para mostrar las hojas ocultas, el código que se utiliza para ocultar las hojas es el siguiente:
she.Visible = xlVeryHidden
⇛⇛⇛⇛⇛⇛⇛⇛⇛⇛⇛⇛⇛⇛⇛⇛⇛⇛⇛⇛⇛⇛⇛⇛⇛⇛⇛⇛⇛⇛⇛⇛⇛⇛⇛⇛⇛⇛⇛⇛⇛⇛⇛⇛⇛
Quizás también sea útil:
Formulario que solicita password para ejecutar una macro o acceder a libro
Como buscar datos y cargar imagen de catalogo en formulario
Como insertar imagen en comentario de Excel
⇛⇛⇛⇛⇛⇛⇛⇛⇛⇛⇛⇛⇛⇛⇛⇛⇛⇛⇛⇛⇛⇛⇛⇛⇛⇛⇛⇛⇛⇛⇛⇛⇛⇛⇛⇛⇛⇛⇛⇛⇛⇛⇛⇛⇛
Como Mostrar Ocultar el Ribbon o Menú de Excel
Código que se inserta en ThisWorkbook
Private Sub Workbook_Open()
On Error Resume Next
With CreateObject(«Scripting.FileSystemObject»)
If Hex(.Drives.Item(«c:»).SerialNumber) = «415ADDC» Then ‘415ADDC
MsgBox («Bienvenido, accesando a datos»), vbInformation
For Each she In Sheets
she.Visible = True
Next
Else
MsgBox («Acceso denegado, usuario no autorizado»), vbCritical, «AVISO»
ThisWorkbook.Close savechanges = True
Application.Quit
End If
End With
End Sub
Private Sub Workbook_BeforeClose(Cancel As Boolean)
On Error Resume Next
For Each she In Sheets
she.Visible = xlVeryHidden
Next
End Sub
Private Sub Workbook_Open()
On Error Resume Next
With CreateObject(«Scripting.FileSystemObject»)
If Hex(.Drives.Item(«c:»).SerialNumber) = «415ADDC» Then ‘415ADDC
MsgBox («Bienvenido, accesando a datos»), vbInformation
For Each she In Sheets
she.Visible = True
Next
Else
MsgBox («Acceso denegado, usuario no autorizado»), vbCritical, «AVISO»
ThisWorkbook.Close savechanges = True
Application.Quit
End If
End With
End Sub
Private Sub Workbook_BeforeClose(Cancel As Boolean)
On Error Resume Next
For Each she In Sheets
she.Visible = xlVeryHidden
Next
End Sub
Si te fue de utilidad puedes INVITARME UN CAFÉ y de esta manera ayudar a seguir manteniendo la página, CLICK para descargar en ejemplo en forma gratuita.
.
If this post was helpful INVITE ME A COFFEE and so help keep up the page, CLICK to download free example.
Si te gustó por favor compártelo con tus amigos
If you liked please share it with your friends