Notifications
Clear all

TextBox

4 Posts
2 Usuários
0 Reactions
849 Visualizações
(@monohell)
Posts: 0
New Member
Topic starter
 
Private Sub botao_entrar_click()
Worksheets("Cadastro Analistas").Select
If caixa_usuario = "" Then
            MsgBox "Digite o nome do usuário!"
            caixa_usuario.SetFocus
            
            
            
            Exit Sub
        Else
          If caixa_senha = "" Then
                MsgBox "Digite a senha do usuário !"
                caixa_senha.SetFocus
                Exit Sub
                
          End If
  End If

'Varrer planilha

For i = 2 To 4
Celula1 = Cells(i, 1).Value
celula2 = CStr(Cells(i, 2).Value)

If caixa_usuario = Celula1 And caixa_senha = CStr(celula2) Then

    MsgBox "Bem Vindo"
    Unload Login
    Cadastro.Show
    Exit Sub

End If
Next
MsgBox "Usuário ou senha inválidos, tente novamente!"


End Sub

Private Sub caixa_usuario_Change()


   Worksheets("Banco de Dados").Select
   Totalregistro = Worksheets("Banco de Dados").UsedRange.Rows.Count + 1
   Cells(Totalregistro, 9).Value = caixa_usuario.TextAlign

End Sub

Galera, eu percebi que cada letra que eu entro na caixa "nome_usuario" ele registra de forma separada e atribui na planilha. Porque ele não reconhece o conjunto de caracteres?

 
Postado : 13/07/2015 7:43 pm
(@fernandofernandes)
Posts: 43750
Illustrious Member
 

Mono, o que acontece é que está utilizando o Evento CHANGE, ou seja, neste evento :
caixa_usuario_Change as instruções ocorrerão a cada alteração neste controle, então sempre que digitar um caracter a rotina será executada.
Procure utilizar o Evento BeforeUpdate ou Exit.

[]s

 
Postado : 13/07/2015 8:18 pm
(@monohell)
Posts: 0
New Member
Topic starter
 

Quando eu tento inserir ambos os eventos, ocorre o seguinte erro: "Declaração de procedimento não corresponde a descrição do evento" :?

 
Postado : 14/07/2015 9:36 am
(@fernandofernandes)
Posts: 43750
Illustrious Member
 

Mono, você deve ter inserido manualmente somente o evento, e cada um deles tem complementos, vamos dizer assim, para alterar um evento, de dois clique no controle caixa_usuario e deverá aparecer sua rotina "Private Sub caixa_usuario_Change()", então selecione no combo no canto superior esquerdo onde deverá estar escrito Change e altere para o evento que quer e depois copie as instruções que estão no change para esta nova.

Para ser manual, teria de ficar assim :

Private Sub caixa_usuario_BeforeUpdate(ByVal Cancel As MSForms.ReturnBoolean)
    'aqui suas instruções
End Sub

ou

Private Sub caixa_usuario_Exit(ByVal Cancel As MSForms.ReturnBoolean)
    'aqui suas instruções
End Sub

[]s

 
Postado : 14/07/2015 10:45 am