Vídeo recomendado
https://youtu.be/diWPPPhW-9E

Modificação VBA Expiração Planilha

Fórum para dúvidas sobre os fundamentos da linguagem de programação Visual Basic no contexto do VBA
scainet
Acabou de chegar
Acabou de chegar
Mensagens: 6
Registrado em: Qua Mar 05, 2014 3:29 pm

Modificação VBA Expiração Planilha

Mensagem por scainet »

Bom dia pessoal
Eu encontrei um código VBA que faz com que a planilha tenha uma data de validade.
Achei interessante, mas eu preciso fazer uma modificação nele. Só não sei como.

Eu queria que a planilha expirasse após um tempo específico.
Por exemplo: a pessoa acessa a planilha e tem 5 minutos para trabalhar. Após os 5 min a planilha irá expirar e forçar o fechamento.

Segue o código que eu tenho em mãos:

Código: Selecionar todos

Private Sub Workbook_Open()
Dim exdate As Date
'data de expiração
exdate = "10/03/2014"
If Date > exdate Then
varNum = Application.InputBox("A planilha expirou, informe o codigo", "Revalidação do prazo", "123456")
If varNum = 123456 Then
Exit Sub
End If
MsgBox ("Você chegou no final do período de uso")
ActiveWorkbook.Close
End If
MsgBox ("Você têm " & exdate - Date & " Dias restantes")
End Sub
Fonte: http://excelevba.com.br/expiracao-de-data-para-excel/


Disable adblock

This site is supported by ads and donations.
If you see this text you are blocking our ads.
Please consider a Donation to support the site.


Avatar do usuário
webmaster
Administrador
Mensagens: 3114
Registrado em: Sex Jul 24, 2009 2:44 pm
Contato:

Re: Modificação VBA Expiração Planilha

Mensagem por webmaster »



scainet
Acabou de chegar
Acabou de chegar
Mensagens: 6
Registrado em: Qua Mar 05, 2014 3:29 pm

Re: Modificação VBA Expiração Planilha

Mensagem por scainet »

Trabalhei na planilha (com ajuda do Gilmar Tsalikis) e está quase finalizada. Mas falta um detalhe.
Preciso que após ser executada a Sub Timer, se a pessoa não digitar a senha e confirmar dentro de 30 segundos (exemplo), a planilha será salva e fechada.
Segue os códigos atuais:

Ao abrir a planilha um cronometro é disparado e, ao término do tempo, uma macro é executada.

Código: Selecionar todos

Private Sub Workbook_Open()
    Application.OnTime Now + TimeValue("00:05:00"), "Timer"
End Sub
Esta macro exibe um caixa solicitando a senha. Se a senha for verdadeira, o cronometro é disparado novamente.
Se a senha for falsa, aparece uma MsgBox que, se dado OK, a planilha é salva e fechada.

Código: Selecionar todos

Sub Timer()
    varNum = Application.InputBox("A planilha expirou, informe o codigo", "Revalidação do prazo")
    
If varNum = 123 Then
    tempo = Now + TimeValue("00:05:00")
    Application.OnTime tempo, "Timer"
Exit Sub

End If
    MsgBox ("Você chegou no final do período de uso")
    ActiveWorkbook.Save
    ActiveWorkbook.Close
    End Sub
webmaster escreveu:Colega,

Isso deve ajudar:

http://www.tomasvasquez.com.br/blog/mic ... era-no-vba

Abraços
Anexos
VBA Expirar Planilha.rar
(13.78 KiB) Baixado 277 vezes


Disable adblock

This site is supported by ads and donations.
If you see this text you are blocking our ads.
Please consider a Donation to support the site.


Responder