boa noite amigos!
Estou estruturando minha conexão com banco...
antigamente eu estava vinculando direto pelo access, agr quero fazer tudo via VBA.... pois meu back anda sendo corrompido varias vezes..
estou criando modulo assim:
no formulario de login nao consigo chama a função antiga de dlookup
antes assim:
e agora assim:
meu forms esta assim:
só que esta dando erro.
Numero 3078 mecanismo do banco de dados microsoft access nao pode localizar a tabela de entrada ou consulta 'Tbl_01_01_Usuario' verefique se ela existe e se o nome foi digitado corretamente.
alguem poderia me dar uma luz...
abraços
Estou estruturando minha conexão com banco...
antigamente eu estava vinculando direto pelo access, agr quero fazer tudo via VBA.... pois meu back anda sendo corrompido varias vezes..
estou criando modulo assim:
- Código:
Option Explicit
Option Compare Database
Global cnn As New ADODB.Connection
Global vgPath As String
Public Function Conect()
On Error GoTo trata_erro
If cnn.State = 1 Then cnn.Close
With cnn
.ConnectionString = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=C:\Users\natha\Desktop\Cliente\DBCLIENTE.accdb;Persist Security Info=False;"
.Open
End With
Exit Function
trata_erro:
MsgBox "Erro gerado: " & Err.Number & " - " & Err.Description & "", vbCritical, "Erro"
Exit Function
End Function
no formulario de login nao consigo chama a função antiga de dlookup
antes assim:
- Código:
'vrValidar = DLookup("[Usuario]", "Tbl_01_01_Usuario", "[Usuario]='" & Me!UsuarioCaixa & "' And [Senha]='" & SenhaCaixa & "'")
e agora assim:
- Código:
rst.Open , Conect(DLookup("[Usuario]", "Tbl_01_01_Usuario", "[Usuario]='" & Me.UsuarioCaixa & "' And [Senha]='" & Me.SenhaCaixa & "'"))
meu forms esta assim:
- Código:
Private Sub BtnLogin_Click()
Dim rst As New ADODB.Recordset
Call Conect
'Verifica se a caixa do Usuario esta vazia
If Me.UsuarioCaixa = "" Or IsNull(UsuarioCaixa) Then
MsgBox "Digita sua Conta e Senha", vbCritical, "Insira um usuário"
Me.UsuarioCaixa = Null
Me.UsuarioCaixa.SetFocus
Else
'Verifica se a caixa do Senha esta vazia
If Me.SenhaCaixa = "" Or IsNull(SenhaCaixa) Then
MsgBox "É Necessário a inserção de dados", vbCritical, "Insira uma senha"
Me.SenhaCaixa = Null
Me.SenhaCaixa.SetFocus
Else
'Procura na tabela Tbl_01_01_Usuario pelos campos iguais aos informados no formulario
rst.Open , Conect(DLookup("[Usuario]", "Tbl_01_01_Usuario", "[Usuario]='" & Me.UsuarioCaixa & "' And [Senha]='" & Me.SenhaCaixa & "'"))
'DLookup("[Usuario]", "Tbl_01_01_Usuario", "[Usuario]='" & Me.UsuarioCaixa & "' And [Senha]='" & Me.SenhaCaixa & "'")
rst.Open sSql, cnn, adOpenKeyset, adLockReadOnly
'Validação
If vrValidar <> "" Or Not IsNull(vrValidar) Then
setUsuarioAtual (Me.UsuarioCaixa.Value) 'codigo novo
usuarioativo = Me.UsuarioCaixa.Value
DoCmd.Close
DoCmd.OpenForm "Frm_02_01_01_Principal"
Else
MsgBox "Senha ou usuário incorreto", vbCritical, "Tente Novamente"
Me.UsuarioCaixa = Null
Me.SenhaCaixa = Null
Me.UsuarioCaixa.SetFocus
End If
End If
End If
End Sub
só que esta dando erro.
Numero 3078 mecanismo do banco de dados microsoft access nao pode localizar a tabela de entrada ou consulta 'Tbl_01_01_Usuario' verefique se ela existe e se o nome foi digitado corretamente.
alguem poderia me dar uma luz...
abraços
Última edição por maguim em 2/12/2018, 17:05, editado 2 vez(es)