Ir ao conteúdo
  • Cadastre-se

Excel Código VBA para fechamento planilha em caso de erro de senha/usuário


Posts recomendados

Pessoal, tenho uma planilha com proteção de usuário e senha, além de prazo para utilização. Contudo, o código esta permitindo acesso a planilha, mesmo sem digitar a senha e usuário, uma vez que, clicando em cancelar na caixa inputbox, a planilha abre mesmo sem digitar os dados de usuário e senha.

Segue código:
 

Private Sub Workbook_Open()
Dim dt As Date

'Escolha a data em a Pasta de Trabalho deverá expirar (ano, mês, dia)

dt = DateSerial(2021, 12, 31)

If Date >= dt Then
MsgBox "Esta Pasta de Trabalho expirou! Favor contatar o administrador através do e-mail [email protected] ou pelo WhatsApp (31) 99610-8436."

ThisWorkbook.Close SaveChanges:=False

End If



Reiniciar:

Usuario = InputBox("Digite o seu usuário:")
Senha = InputBox("Digite a sua senha:")

On Error Resume Next
ActiveSheet.Unprotect
If Err Then
MsgBox "senha errada"
ThisWorkbook.Close SaveChanges:=False
End If
On Error GoTo 0

senha_certa = Worksheets("Logins").Cells.Find(Usuario).Offset(0, 1)
MsgBox "Esta Pasta de Trabalho esta ativa!"
If Senha & "" <> senha_certa & "" Then

ThisWorkbook.Close SaveChanges:=False


End If



End Sub

 

Link para o comentário
Compartilhar em outros sites

Veja se dá pra adaptar às suas necessidades:

 

Private Sub Workbook_Open()
Dim quantas As Integer, tenta As Integer, senha As String, dt As Date
'Escolha a data em a Pasta de Trabalho deverá expirar (ano, mês, dia)
dt = DateSerial(2021, 12, 31)
tenta = 3
quantas = 0

If Date >= dt Then
    MsgBox "Esta Pasta de Trabalho expirou! Favor contatar o administrador através do e-mail [email protected] ou pelo WhatsApp (31) 99610-8436."
    ThisWorkbook.Close SaveChanges:=False
End If

volta:
    senha = InputBox("Digite a senha")
    If senha = "123" Then
        MsgBox "Seja bem vindo", vbInformation, "© Muca Sistemas - 2021"
    Else
        quantas = quantas + 1
    If quantas >= tenta Then
        ActiveWorkbook.Close SaveChanges:=False
    End
    Else
        MsgBox "Você tem " & tenta - quantas & " tentativa(s)", vbInformation, "© Muca Sistemas - 2021"
GoTo volta
End If
End If
End Sub

 

Link para o comentário
Compartilhar em outros sites

Crie uma conta ou entre para comentar

Você precisa ser um usuário para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar agora

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...