Sabe aquele trabalho importante que você não quer que ninguém copie? Então olha que legal essa dica de hoje: Vamos criar uma planilha que é aberta e no momento em que é fechada, se autoexclui do pc. Detalhe: ela não vai nem mesmo para a lixeira.
A planilha tem diversas utilidades e pode ser mesclada, por exemplo, com o código que ensinaremos em breve, onde criaremos um prazo de validade para a planilha. Ou seja, com este código e o código da data de validade, se a planilha for aberta após o vencimento ela se auto excluirá, legal, certo?
Bem, temos 2 códigos: Um no qual a planilha será excluída no momento da abertura, ideal para o prazo de validade, já que assim o usuário nem poderá checar os dados; e um outro código em que a planilha será aberta, irá funcionar perfeitamente e no momento em que ele fechar, ela se autoexcluirá.
Vamos ver os dois:
Planilha é excluída antes de abrir
Pois bem, vamos ao código: Abra a janela de edição (atalho alt + f11) e dê um clique em 'EstaPasta_de_trabalho'. Lá vamos colar o seguinte código:
Private Sub Workbook_Open()
Dim dtexp As Date
'Escolha a data que deverá expirar
dtexp = ("29/04/2011")
If Date >= #1/11/2010# Then
If Date >= dtexp Then
ThisWorkbook.Saved = True
'personalize a mensagem na linha abaixo
MsgBox "Este arquivo está expirado, se autoexcluirá!"
ThisWorkbook.ChangeFileAccess xlReadOnly
Kill ThisWorkbook.FullName
ThisWorkbook.Close
End If
End If
End Sub
Veja que no nosso código, na terceira linha, dtexp = ("29/04/2011"), é onde você colocará a data de validade. Coloque algo como ano passado só por garantia. Assim nunca vai dar erro =D
Quer ainda mais segurança? Então olha só essa dica: Como o Excel exibe a tela inicial, você pode colocar os dados em uma segunda planilha. Dessa forma, a caixa de aviso ficará na primeira tela e os seus dados ficarão seguros na tela 2.
Confira como fizemos no exemplo abaixo:
Planilha é excluída após a execução
Repita o mesmo atalho de Alt + f11, dê um duplo clique em 'EstaPasta_de_trabalho' e cole o seguinte código:
Private Sub Workbook_BeforeClose (Cancel As Boolean)
Dim dtexp As Date
'Escolha a data que deverá expirar
dtexp = ("29/04/2011")
If Date >= #1/11/2010# Then
If Date >= dtexp Then
ThisWorkbook.Saved = True
'personalize a mensagem na linha abaixo
MsgBox "Este arquivo está expirado, se autoexcluirá!"
ThisWorkbook.ChangeFileAccess xlReadOnly
Kill ThisWorkbook.FullName
End If
End If
End Sub
Mesma dica de antes: Veja que no nosso código, na terceira linha, dtexp = ("29/04/2011"), é onde você colocará a data de validade. Coloque algo como ano passado só por garantia. Assim nunca vai dar erro =D E não esqueça de manter uma cópia dos dados, pois após a exclusão a planilha não vai nem mesmo para a lixeira, ok?
Se você quiser mais segurança, aprenda aqui a bloquear a edição das VBAs e também como forçar a execução das mesmas.
Para baixar nosso exemplo e começar a produzir suas planilhas que se autoexcluem, acesse este link.
Até a próxima
😕 Poxa, o que podemos melhorar?
😃 Boa, seu feedback foi enviado!
✋ Você já nos enviou um feedback para este texto.