Macro para que funcione en una sola computadora

Como le puedo hacer para que los libros en excel que yo creo solo funcionen en mi computadora, que al momento de abrirlos mande una especie de código y después se cierre solo el archivo.

1 Respuesta

Respuesta
1

[Hola

Hay algunos modos, pero previamente tienes que elegir cuál:

- Usar la serie de fábrica del disco duro

- La "Serie" que el sistema operativo da a cada partición

- La serie de fábrica de la placa (un poco más complicado pero no imposible)

Una vez que obtienes eso, ya la cosa es más fácil pero, así le coloques clave a las macros, ojo que siempre habrá alguien que las pueda desbloquear.

Abraham Valencia

como seria el ejemplo en cada caso? gracias por el apoyo.

A ver, dado que esto es algo ad honorem en el que cada uno da el poco tiempo libre para ayudar, pues no, no puedo dejarte ejemplos de cada uno pero sí al menos uno.

Vamos a suponer que usarás la serie de la partición "C", entonces coloca esto en un módulo estándar:

Sub SerieParticion()
Dim fs As Object
Dim Particion As Object
Set fs = CreateObject("Scripting.FileSystemObject")
Set Particion = fs.GetDrive(fs.GetDriveName(fs.GetAbsolutePathName("C:")))
Debug.Print "Serie de la partición elegida: " & Particion.SerialNumber
End Sub

Activa la macro y en la "Ventana inmediato" tendrás algo como esto:

Serie de la partición elegida: -929264211

Anota/copia el número (es normal si aparece como negativo, por si acaso). Borra la macro.

Luego usa el evento Open del libro así (en el módulo llamado "ThisWorkBook" - nombre por defecto):

Private Sub Workbook_Open()
Dim fs As Object
Dim Particion As Object
Dim serie As String
Set fs = CreateObject("Scripting.FileSystemObject")
Set Particion = fs.GetDrive(fs.GetDriveName(fs.GetAbsolutePathName("C:")))
Let serie = Particion.SerialNumber
If serie <> "-929264211" Then
    MsgBox "No estás autorizado a usar el archivo"
    ActiveWorkbook.Close False
    Exit Sub
End If
End Sub

Listo

Abraham Valencia

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas