É a minha primeira vez aqui, portanto, se faltou algum detalhe na msg que faltou, por favor, me perdoem.
Estou criando um sistema de login no excel e como comecei a aprender VBA por conta, estou tendo algumas dificuldades tremendas. Agora mesmo fui tentar executar um formulário ele me retornou um erro que não estou conseguindo reparar.
A minha dúvida é na tela de CADASTRO de LOGIN e não na tela de login em sí. Ele contitui apenas de 4 txtbox.
1 - Digite um nome para o seu usuário
2 - Digite uma senha
3 - COnfirme sua senha
4 - senha master
A pessoa só consegue gravar as informações com a senha master. Aqui segue o código.
Private Sub bgravar_Click()
ThisWorkbook.Worksheets("users").Activate
Range("A2").Select
Do
If Not (IsEmpty(ActiveCell)) Then
ActiveCell.Offset(1, 0).Select
End If
Loop Until IsEmpty(ActiveCell) = True
If (tbdigiteumasenha.Value = tbconfirmeasenha.Value) And (Range("A2").Value = tbsenhamaster.Value) And (Range("A2").Value Is Not Empty) Then
Question
Tortchan
Olá pessoal,
É a minha primeira vez aqui, portanto, se faltou algum detalhe na msg que faltou, por favor, me perdoem.
Estou criando um sistema de login no excel e como comecei a aprender VBA por conta, estou tendo algumas dificuldades tremendas. Agora mesmo fui tentar executar um formulário ele me retornou um erro que não estou conseguindo reparar.
A minha dúvida é na tela de CADASTRO de LOGIN e não na tela de login em sí. Ele contitui apenas de 4 txtbox.
1 - Digite um nome para o seu usuário
2 - Digite uma senha
3 - COnfirme sua senha
4 - senha master
A pessoa só consegue gravar as informações com a senha master. Aqui segue o código.
Private Sub bgravar_Click()
ThisWorkbook.Worksheets("users").Activate
Range("A2").Select
Do
If Not (IsEmpty(ActiveCell)) Then
ActiveCell.Offset(1, 0).Select
End If
Loop Until IsEmpty(ActiveCell) = True
If (tbdigiteumasenha.Value = tbconfirmeasenha.Value) And (Range("A2").Value = tbsenhamaster.Value) And (Range("A2").Value Is Not Empty) Then
ActiveCell.Value = tbdigiteumnomeparaoseuusuario.Value
ActiveCell.Offset(0, 1).Value = tbdigiteumasenha.Value
MsgBox ("Cadastro efetuado com sucesso! Por favor, efetue o login."), vbCritical, "Cadastrado com sucesso"
ElseIf tbdigiteumasenha.Value <> tbconfirmeasenha.Value Then
MsgBox ("A confirmação de senha não confere. Por favor verifique."), vbCritical, "Confirmação não confere"
tbdigiteumasenha.Value = ""
tbconfirmeasenha.Value = ""
ElseIf Range("a2").Value <> tbsenhamaster.Value Then
MsgBox ("Senha Master incorreta. Por favor, verifique."), vbCritical, "Senha Master incorreta"
tbsenhamaster.Value = ""
ElseIf Range("a2").Value Is Empty Then
MsgBox ("Seu nome de usuário é o primeiro a ser cadastrado, portanto, sua senha será considerada a senha master"), vbInformation, "Usuário Master"
ActiveCell.Value = tbdigiteumnomeparaoseuusuario.Value
ActiveCell.Offset(0, 1).Value = tbdigiteumasenha.Value
End If
End Sub
-----------------------------------------
Ele me retorna um erro quando clico em gravar dizendo
"Erro em tempo de execução '424' : O objeto é obrigatório"
quando mando depurar, ele destaca a linha:
"If (tbdigiteumasenha.Value = tbconfirmeasenha.Value) And (Range("A2").Value = tbsenhamaster.Value) And (Range("A2").Value Is Not Empty) Then"
Alguém pode me ajudar?
Link to comment
Share on other sites
0 answers to this question
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.