good guy 14/2/2014, 14:45
Olá Konnecta,
Fiz algumas modificações na sub-rotina com base em seu bd exemplo. Esse código deve ficar no formulário de login (frmSenha) que disponibilizei para você gratuitamente para você testar e com uma função para logar também de minha autoria:
Public Sub Checar()
'Código de Eduardo Machado (Good Guy) - Maximo Access
Dim rs As DAO.Recordset
Dim i As Integer
Dim sDescricao As String
Set rs = CurrentDb.OpenRecordset("tblMovimento", dbOpenTable)
sDescricao = "ABERTURA DE CAIXA"
For i = 1 To rs.RecordCount
If DLookup("Data", "tblMovimento", "Codigo = " & i) = Date Or DLookup("Descricao", "tblMovimento", "Codigo = " & i) = sDescricao Then
DoCmd.OpenForm "form3"
DoCmd.Close acForm, "form2"
Else
DoCmd.OpenForm "form2"
DoCmd.Close acForm, "form3"
End If
Next i
CurrentDb.Close
Set rs = Nothing
End Sub
Public Function VerificaLogin(sLogin As String, sSenha As String)
'Código de Eduardo Machado (Good Guy) - Maximo Access
Dim nLogin As String
Dim nSenha As String
nLogin = Me.txtNome 'login é o nome da caixa de texto do formulário de Login
nSenha = Me.txtSenha 'senha é o nome da caixa de texto do formulário de Login
sLogin = Nz(DLookup("Usuario", "tblUsuários", "Usuario = '" & nLogin & "'"))
sSenha = Nz(DLookup("senha", "tblUsuários", "Usuario = '" & sLogin & "'"))
If sSenha = nSenha Then
MsgBox "Senha válida !!!", vbInformation, "Testa Login"
Call Checar
Else
MsgBox "Usuário ou Senha inválida !!!", vbInformation, "Testa Login"
End If
End Function
Private Sub cmdOK_Click()
'Código de Eduardo Machado (Good Guy) - Maximo Access
If Not IsNull(txtNome) And Not IsNull(txtSenha) Then
If VerificaLogin(txtNome, txtSenha) = True Then
DoCmd.Close acForm, "frmSenha", acSaveYes
Exit Sub
End If
End If
End Sub
- Anexos
- Database1.zip
- Você não tem permissão para fazer download dos arquivos anexados.
- (76 Kb) Baixado 9 vez(es)
Última edição por good guy em 14/2/2014, 19:05, editado 1 vez(es)